Беру данные из БД, иерархия получается из длины строки одного из столбцов. (там есть 5,10, 15,20,25 и 30 символов). Проблема в том, что когда я делаю дерево, при раскрытии или сварачивание одной из ветвей, сварачивается только первое значение из цикла. Привожу код:
| Код | <script language="JavaScript"> function changeDisplay(id) { var ul = document.getElementById('ul' + id).style; var li = document.getElementById('li' + id).style; if ( 'none' == ul.display ) { ul.display = 'block'; li.listStyleImage = 'url("open.gif")'; } else { ul.display = 'none'; li.listStyleImage = 'url("closed.gif")'; } } </script> <table width="100%" height="100%" border="2"> <tr> <td width="50%"> <?php $conn = odbc_connect( "--", "---", "---" ); $sSQL="SELECT CLASSID, CLASSNAME FROM ---- ORDER BY -----"; $result=odbc_exec($conn, $---); echo ("<ul id='ul0'>\n"); //odbc_result_all($result); for ($i=0; $i<odbc_num_rows($result); $i++) { $f=odbc_fetch_array($result); if (strlen($f[---])==5) { echo("<li id='li1'>\n"); echo ("<a href='javascript: changeDisplay(1);'>".$f["---"]."</A>"." \n"); } if (strlen($f[---])==10) { echo("<ul id='ul1' style='display: block; '>\n"); echo("<li id='li2'>\n"); echo ("<a href='javascript: changeDisplay(2);'>".$f["---"]."</A>"." \n"); echo("</UL>\n"); } if (strlen($f[---])==15) { echo("<ul id='ul2' style='display: block; '>\n"); echo("<ul id='ul2' style='display: block; '>\n"); echo("<li id='li3'>\n"); echo ("<a href='javascript: changeDisplay(3);'>".$f["---"]."</A>"." \n"); echo("</UL>\n"); echo("</UL>\n"); } if (strlen($f[---])==20) { echo("<ul id='ul3' style='display: block; '>\n"); echo("<ul id='ul3' style='display: block; '>\n"); echo("<ul id='ul3' style='display: block; '>\n"); echo("<li id='li4'>\n"); echo ("<a href='javascript: changeDisplay(4);'>".$f["---"]."</A>"." \n"); echo("</UL>\n"); echo("</UL>\n"); echo("</UL>\n"); } if (strlen($f[---])==25) { echo("<ul id='ul4' style='display: block'>\n"); echo("<ul id=”ul4' style='display: block'>\n"); echo("<ul id='ul4' style='display: block'>\n"); echo("<ul id='ul4' style='display: block'>\n"); echo("<li id='li5'>\n"); echo ("<a href='javascript: changeDisplay(5);'>".$f["---"]."</A>"." \n"); echo("</UL>\n"); echo("</UL>\n"); echo("</UL>\n"); echo("</UL>\n"); } if (strlen($f[---])==30) { echo("<ul id='ul5' style=”display: block'>\n"); echo("<ul id='ul5' style='display: block'>\n"); echo("<ul id='ul5' style='display: block'>\n"); echo("<ul id='ul5' style='display: block'>\n"); echo("<ul id='ul5' style='display: block'>\n"); echo("<li id='li6'>\n"); echo ("<a href='javascript: changeDisplay(6);'>".$f["---"]."</A>"." \n"); echo("</UL>\n"); echo("</UL>\n"); echo("</UL>\n"); echo("</UL>\n"); echo("</UL>\n"); } } echo("</UL>\n"); odbc_close( $conn ); ?> </td> <td width="25%"> </td> </tr> </table>
|
Как сделать чтоб скрывалась не только первая строчка, но и все строчки, относящиееся к данной категории? |