有两个下拉列表框。当第一个列表框的值改变时,第二个列表框对应着改变。
比如第一个值为姓名时,第二个自动添加,张三,李四.....
第一个为班级时,第二个自动添加一班,二班.....。
有些人说PHP不能处理列表框change事件。是不是哟。如果不是,哪位高手能帮忙回答一下。
比如第一个值为姓名时,第二个自动添加,张三,李四.....
第一个为班级时,第二个自动添加一班,二班.....。
有些人说PHP不能处理列表框change事件。是不是哟。如果不是,哪位高手能帮忙回答一下。
调试欢乐多
<head>
</head>
<body>
<script language="javascript">
<!--
var subcat = new Array();
subcat[0] = new Array('10','1','=1')
subcat[1] = new Array('10','2','=2')
subcat[2] = new Array('10','3','=3')
subcat[3] = new Array('10','4','=4')
subcat[4] = new Array('10','5','=5')
subcat[5] = new Array('10','6','=6')
subcat[6] = new Array('10','7','=7')
subcat[7] = new Array('10','8','=8')
subcat[8] = new Array('10','9','=9')
subcat[9] = new Array('10','10','=10')
subcat[10] = new Array('20','11','=11')
subcat[11] = new Array('20','12','=12')
subcat[12] = new Array('20','13','=13')
subcat[13] = new Array('20','14','=14')
subcat[14] = new Array('20','15','=15')
subcat[15] = new Array('20','16','=16')
subcat[16] = new Array('20','17','=17')
subcat[17] = new Array('20','18','=18')
subcat[18] = new Array('20','19','=19')
subcat[19] = new Array('20','20','=20')
function changeselect1(locationid)
{
document.form1.s2.length = 0; //初始化下拉列表 清空下拉数据
document.form1.s2.options[0] = new Option('==请选择==',''); //给第一个值
for (i=0; i<subcat.length; i++) //legth=20
{
if (subcat[i][0] == locationid) //[0] [1] 第一列 第二列
{document.form1.s2.options[document.form1.s2.length] = new Option(subcat[i][1], subcat[i][2]);} //建立option
//第一次 length=1 因为有==请选择==
//i=9时 length= 10 值有11个 因为从0数起 subcat[i][0] == locationid屏蔽了再写
}
}
//-->
</script><form name="form1">
二级联动:<select name="s1" onChange="changeselect1(this.value)">
<option>==请选择==</option>
<option value="10">1-10</option>
<option value="20">11-20</option>
</select><select name="s2" onChange="alert(this.value)">
<option>==请选择==</option>
</select></form>
http://blog.csdn.net/jawsy/archive/2005/06/06/388658.aspx
如果数据很多,也可以列表框变了后,由javascript很后台请求第二个框里面的内容
但一般都可以在页面上返回一个二维数组来处理两个列表框
另外其他的朋友,如果有其它方法,能说得详细一点吗
谢谢!!!
如果连动出来的内容比较多 且不固定 最好就是AJAX了如果非用PHP也能做 SELECT里面写一个 onchenge= “submit()”;
PS:第一个选择列表一改变 就提交页面 获取页面获取到第一个select提交的值以后 根据得到的值搜索第二个列表对应应该显示的内容 然后页面显示的时候内容就和第一个联动了