php 三级联动菜单
数据库结构
代码如下
代码如下:
-- 表的结构 `bigclass` -- CREATE TABLE `bigclass` ( `bigclassid` int(11) NOT NULL auto_increment, `bigclassname` varchar(200) collate utf8_unicode_ci NOT NULL, `sort` int(11) NOT NULL, `suoshu` int(1) NOT NULL, PRIMARY KEY (`bigclassid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=19 ; -- 表的结构 `smallclass` -- CREATE TABLE `smallclass` ( `smallclassid` int(11) NOT NULL auto_increment, `smallclassname` varchar(200) collate utf8_unicode_ci NOT NULL, `bigclassid` int(11) NOT NULL, `sort` int(11) NOT NULL, PRIMARY KEY (`smallclassid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=7 ; -- 表的结构 `minclass` -- CREATE TABLE `minclass` ( `minclassid` int(10) NOT NULL auto_increment, `minclassname` varchar(200) NOT NULL, `bigclassid` int(10) NOT NULL, `smallclassid` int(10) NOT NULL, `sort` int(10) NOT NULL, PRIMARY KEY (`minclassid`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
代码如下
代码如下:
<script language = "JavaScript"> var onecount; onecount=0; subcat = new Array(); <? //类别选择 mysql_select_db($database_lr, $lr); $sql = "select * from smallclass order by sort"; $result = mysql_query( $sql ); $count = 0; while($res = mysql_fetch_row($result)){ ?> subcat[<?=$count?>] = new Array("<?=$res[1]?>","<?=$res[4]?>","<?=$res[0]?>"); <? $count++; } ?> onecount=<?php echo $count?> //联动函数 function changelocation(bigclassid) { document.myform.smallclassid.length = 0; var bigclassid=bigclassid; var i; document.myform.smallclassid.options[0] = new Option('请选择二级分类',''); for (i=0;i < onecount; i++) { if (subcat[i][1] == bigclassid) { document.myform.smallclassid.options[document.myform.smallclassid.length] = new Option(subcat[i][0], subcat[i][2]); } } } </script> <?php mysql_select_db($database_lr, $lr); $sql2 = "select * from minclass order by sort"; $result2 = mysql_query( $sql2 ); $count2 = 0; ?> <script language = "JavaScript"> //如果这个数组中含有双引号则不能使用。即二级和三级类不能含有双引号 var onecount2; onecount2=0; subcat2 = new Array(); <?php $count2 = 0; while($res2 = mysql_fetch_row($result2)){ ?> subcat2[<?php echo $count2?>] = new Array("<?php echo $res2[1]?>","<?php echo $res2[3]?>","<?php echo $res2[0]?>"); <?php $count2++; } ?> onecount2=<?php echo $count2?>; function changelocation2(smallclassid) { document.myform.minclassid.length = 0; var smallclassid=smallclassid; var j; document.myform.minclassid.options[0] = new Option('请选择三级分类',''); for (j=0;j < onecount2; j++) { if (subcat2[j][1] == smallclassid) { document.myform.minclassid.options[document.myform.minclassid.length] = new Option(subcat2[j][0], subcat2[j][2]); } } } </script> <select name="bigclassid" onChange="changelocation(document.myform.bigclassid.options[document.myform.bigclassid.selectedIndex].value)" size="1"> <option selected value="">请指定一级分类</option> <? $sql = "select * from bigclass order by sort"; $result = mysql_query( $sql ); while($res = mysql_fetch_row($result)){ ?> <option value="<? echo $res[0]; ?>"><? echo $res[1]?></option> <? } ?> </select> <select name="smallclassid" onChange="changelocation2(document.myform.smallclassid.options[document.myform.smallclassid.selectedIndex].value)" size="1"> <option selected value="">请指定二级分类</option> </select> <select name="minclassid" size="1"> <option selected value="">==所有三级分类==</option> </select>
相关推荐
zyyjay 2020-11-09
xuebingnan 2020-11-05
samtrue 2020-11-22
stefan0 2020-11-22
yifangs 2020-10-13
songshijiazuaa 2020-09-24
hebiwtc 2020-09-18
天步 2020-09-17
83911535 2020-11-13
whatsyourname 2020-11-13
zhouyuqi 2020-11-10
Noneyes 2020-11-10
mathchao 2020-10-28
王志龙 2020-10-28
wwwsurfphpseocom 2020-10-28
diskingchuan 2020-10-23
savorTheFlavor 2020-10-23