无限级下拉菜单代码:
2005-12-11  作者:amao  同分类文章
description:
从phpe刨来的代码,留着有时间了研究
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  4. <script language="javascript">
  5. //[0,1,'AAA'],其中0值父id,1值本身id,AAA为类别名
  6. var childmenu = new Array(
  7.          [0,1,'AAA'],
  8.          [0,2,'BBB'],
  9.          [0,3,'CCC'],
  10.          [1,4,'mmm'],
  11.          [1,5,'nnn'],
  12.          [1,6,'ooo'],
  13.          [2,7,'xxx'],
  14.          [2,8,'yyy'],
  15.          [2,9,'zzz'],
  16.          [4,10,'rrr']
  17.          );
  18.          
  19. var loopmenu_num = 1;
  20. function drawSelect(parentValue,arrMenu,selectName,htmlObj)
  21. {
  22.    var strHtml = "";
  23.    var existparent = false;
  24.    var k = 0;
  25.    var arrHtml = new Array();
  26.  
  27.    //最好先判断arrMenu是不是数组
  28.    //奇怪,空值居然与0相等,俺的js不够熟,所以把Please Select中的option值设为-1
  29.    for(i=0; i<arrMenu.length; i++)
  30.    {
  31.        if(arrMenu[i][0] == parentValue)
  32.        {
  33.            arrHtml[k] += '<option value="'+arrMenu[i][1]+'">'+arrMenu[i][2]+'</option> ';
  34.            existparent = true;
  35.        }
  36.        k++;
  37.    }
  38.    
  39.    if(existparent == false)
  40.    {
  41.        htmlObj.innerHTML = "";
  42.        return;
  43.    }
  44.  
  45.    strHtml += '<select name="'+selectName+'[]" class="font1" id="'+selectName+'" onChange="drawSelect(this.value,childmenu,'catname',loopselect_'+loopmenu_num+')"> '
  46.        +'<option value="-1" selected>Please Select</option> ';    
  47.      
  48.    strHtml += arrHtml.join("");
  49.    
  50.    strHtml += '</select> ';
  51.  
  52.    strHtml += '<span id="loopselect_'+loopmenu_num+'"></span>';
  53.    if(htmlObj == null)
  54.    {
  55.        document.write(strHtml);
  56.    }
  57.    else
  58.    {
  59.        htmlObj.innerHTML = strHtml;
  60.        //alert(htmlObj.innerHTML);
  61.    }
  62.    loopmenu_num++;    
  63. }
  64. </script>
  65. </head>
  66.  
  67. <body>
  68. <form name="srchform" method="post" action="">
  69. <script language=javascript>drawSelect(0,childmenu,'catname',null);</script>
  70. </form>
  71.  
  72. </body>
  73. </html>


相关
fastcgi mysql_pconnect 数据库持续链接
不需要mod_rewrite直接使用php实现伪静态化页面
免费 pdf 库类 library
老PHP程序的Register Globals 问题
MySQL多表操作和备份处理
读取NFO信息的php代码。
MySQL两种表存储结构MyISAM和InnoDB的性能比较
email地址php检测
Smarty-2.6.12 FAQ 有感
用PHP处理多个同名复选框