关于JS 联动,下拉框选项前后选择个数不同
或者直接看后面的问题 我向贴上我的代码,各位可运行一下。


var temp = document.frm.s2;
temp.length=0;
for (i=0;i<select2[x].length;i++)
{
temp.options[i]=new Option(select2[x][i].text,select2[x][i].value);
}
alert("x:"+x+" select2["+x+"].length:"+select2[x].length);
temp.options[0].selected=true;
}
</script>
</body>
</html>
[解决办法]
<form name="frm">
<select name="s1" onChange="redirec(this.options.selectedIndex)">
<option value="id" selected>学号</option>
<option value="age">年龄</option>
<option value="name">姓名</option>
</select>
<select name="s2" id="s2"></select>
<input type="submit" value="查询"/>
</form>
<script language="javascript">
var arr = [
{"contain":"包含","equal":"等于"},
{">":">","=":"=","<":"<","<=":"<=",">=":">="}
];
function redirec(x){
x = x==1?1:0;
var s2 = document.getElementById("s2");//规范点
s2.options.length = 0;//清空下拉菜单
var obj = arr[x];
for(var k in obj){
s2.options.add(new Option(obj[k],k));
//新增下拉菜单,默认已经选中第一项
}
}
redirec(0);
</script>