关于三级联动菜单
不会javascript,网上搜到的实例都不太好改
我的具体要求是:
第一级是学院列表,第二级选本科或硕士(学院有本科生院也有研究生院的),第三级根据学院和年级给出专业设置。还有,我不知道列表项的value值要怎么传递给php,也请给出明确的回答。
想要一段简单的示范代码,我好学习一下。
问题点数:100、回复次数:6Top
1 楼ice_berg16(寻梦的稻草人)回复于 2006-03-03 21:59:25 得分 50
http://www.souzz.net/html/web/web1/12/8825.html
这个是三层的,改起来应该不麻烦Top
2 楼zhaoxiaoyang(梅雪香@深圳)回复于 2006-03-03 22:02:58 得分 50
<html>
<head>
<script language=javascript>
var arr="浙江|江苏|安徽|江西";
var arr0 = "杭州|宁波|温州|绍兴"; //这些数据可以从数据库中取得
var arr1 = "南京|苏州|无锡|常州";
var arr2 = "合肥|翕县|黄山|祁门";
var arr3 = "南昌|九江|赣州|上饶";
var arr00 = "杭州A区|杭州B区";
var arr01 = "宁波A区|宁波B区";
var arr02 = "温州A区|温州B区";
var arr03 = "绍兴A区|绍兴B区";
var arr10 = "南京A区|南京B区";
var arr11 = "苏州A区|苏州B区";
var arr12 = "无锡A区|无锡B区";
var arr13 = "常州A区|常州B区";
var arr20 = "合肥A区|合肥B区";
var arr21 = "翕县A区|翕县B区";
var arr22 = "黄山A区|黄山B区";
var arr23 = "祁门A区|祁门B区";
var arr30 = "南昌A区|南昌B区";
var arr31 = "九江A区|九江B区";
var arr32 = "赣州A区|赣州B区";
var arr33 = "上饶A区|上饶B区";
//alert(eval("arr"+2+1));
function AddOptions(dltObj,arrObj)
{
dltObj.innerHTML="";
var arrLocation=arrObj.split("|");
for(var i=0;i<arrLocation.length;i++){
var opt=document.createElement("OPTION");
dltObj.add(opt);
opt.value=i;
opt.text=arrLocation[i];
}
}
function ShowValue(){
var dltAr=document.getElementById("dltArea");
var hidId=document.getElementById("OutValue");
var txtText=document.getElementById("txtOutText");
hidId.value=dltAr.options[dltAr.selectedIndex].value;
txtText.value=dltAr.options[dltAr.selectedIndex].text;
}
function init(){
AddOptions(dltProvince,eval('arr'));
AddOptions(dltCity,eval('arr'+dltProvince.selectedIndex));
AddOptions(dltArea,eval('arr'+dltProvince.selectedIndex+dltCity.selectedIndex));
ShowValue();
}
</script>
</head>
<body onLoad="init();">
<table width="300" cellpading="0" cellspacing="0" border="2">
<tr>
<td width="100"><select id="dltProvince" onchange="AddOptions(dltCity,eval('arr'+dltProvince.selectedIndex));AddOptions(dltArea,eval('arr'+dltProvince.selectedIndex+dltCity.selectedIndex));ShowValue();" style="width:100%"></select>
</td>
<td width="100"><select id="dltCity" onchange="AddOptions(dltArea,eval('arr'+dltProvince.selectedIndex+dltCity.selectedIndex));ShowValue();" style="width:100%"></select>
</td>
<td width="100"><select id="dltArea" style="width:100%" onchange="ShowValue()"></select></td>
<td width="100">
<input type="hidden" id="OutValue" value="">
<input type="text" id="txtOutText" style="width:100%">
</td>
</tr>
</table>
</body>
</html>
Top
3 楼czq9966(宁录)(毛主席领导咱闹革命……)回复于 2006-03-03 22:18:05 得分 0
觉得利用XMLHTTP做的比较好一些,我这里有一个四级的,如果要的话,你可以发E-MAIL给我,我的E-MAIL是:Czq88oo@163.comTop
4 楼manyou(他山之石【养万头猪,行万里路】)回复于 2006-03-04 08:20:42 得分 0
ajaxTop
5 楼yiyioo(天一(一个人的Team))回复于 2006-03-04 08:57:21 得分 0
用xmlhttp几级都一样~~
Top
6 楼antigue(蠕蠕)回复于 2006-03-04 15:30:00 得分 0
谢谢了~加分Top




