读书人

三级关联下拉菜单,该如何解决

发布时间: 2012-03-06 20:47:55 作者: rapoo

三级关联下拉菜单
谁能给我一个三级关联下拉菜单;选项值均从数据库中读取的JSP程序例子啊?

[解决办法]
你的意思是不是这样的:
<html>
<body>
<select name= "zs " onchange= "demo() ">
<option value= " ">
==请选择==
</option>
<option value= "0 ">
整数
</option>
<option value= "1 ">
小数
</option>
</select>
    
<select name= "xs " onchange= "demo1() ">
<option value= " ">
==请选择==
</option>
</select>
    
<select name= "sz ">
<option value= " ">
==请选择==
</option>
</select>
</body>
</html>

<script language= "javascript ">
function demo(){
var zs = document.getElementById( "zs ").value;

if(zs== '0 '){
document.getElementById( "xs ").options[0] = new Option( "正整数 ", "1 ");
document.getElementById( "xs ").options[1] = new Option( "负整数 ", "2 ");

}else{
document.getElementById( "xs ").options[0] = new Option( "正小数 ", "3 ");
document.getElementById( "xs ").options[1] = new Option( "负小数 ", "4 ");
}

}
function demo1(){
var xs = document.getElementById( "xs ").value;
if(xs== '1 '){
document.getElementById( "sz ").options[0] = new Option( "1 ", "1 ");
document.getElementById( "sz ").options[1] = new Option( "2 ", "2 ");
document.getElementById( "sz ").options[2] = new Option( "3 ", "3 ");
document.getElementById( "sz ").options[3] = new Option( "4 ", "4 ");
}
if(xs== '2 '){
document.getElementById( "sz ").options[0] = new Option( "-1 ", "-1 ");
document.getElementById( "sz ").options[1] = new Option( "-2 ", "-2 ");
document.getElementById( "sz ").options[2] = new Option( "-3 ", "-3 ");
document.getElementById( "sz ").options[3] = new Option( "-4 ", "-4 ");
}
if(xs== '3 '){
document.getElementById( "sz ").options[0] = new Option( "0.1 ", "0.1 ");
document.getElementById( "sz ").options[1] = new Option( "0.2 ", "0.2 ");
document.getElementById( "sz ").options[2] = new Option( "0.3 ", "0.3 ");
document.getElementById( "sz ").options[3] = new Option( "0.4 ", "0.4 ");
}
if(xs== '4 '){
document.getElementById( "sz ").options[0] = new Option( "-0.1 ", "-0.1 ");
document.getElementById( "sz ").options[1] = new Option( "-0.2 ", "-0.2 ");
document.getElementById( "sz ").options[2] = new Option( "-0.3 ", "-0.3 ");
document.getElementById( "sz ").options[3] = new Option( "-0.4 ", "-0.4 ");


}
}
</script>

第一个下拉列表框从数据库里取出所有的值,选中其中一个,第二个下拉列表出现相对应的值,再选中其中一个,第三个下拉列表出现相对应的值?
我写了个简单的DEMO,给你点提示,对你来说,该循环的循环~
2楼的朋友说的很正确,你最好是用AJAX来做,因为你每操作1次都是整体页面刷新,相应速度相对要慢~只要会JS,那么AJAX就不会太难~有时间到网上找一下AJAX的资料,很容易上手的!

读书人网 >Java Web开发

热点推荐