当点击下拉框SELECTBOX3是出现:“对象不支持此属性或者方法”(红色字部分)。请你帮我看看为什么不可以这样来调返回值的函数,可以把代码COPY到机上。
<html>
<head>
</head>
<body>
<form id="f" name="f">
<select id="selectbox3" onchange="fillcat(this.form);" name="selectbox3" >
<option value="0">Select item</option>
<option value="aaa">AAA</option>
<option value="bbb">BBB</option>
<option value="ccc">CCC</option>
<option value="ddd">DDD</option>
<option value="eee">EEE</option>
</select>
<p>
</p>
<select id="listbox1" size="3" name="listbox1" >
<option value="A">Selected items</option>
</select>
<!-- Insert content here -->
</form>
<script language="JavaScript">
//listbox1 添加项函数
function fillcat(s){
//如果selectbox3有超过2项
if (s.selectbox3.options.length>1 ) {
for (var i=1;i<s.selectbox3.length;i++) {
if (s.selectbox3.options(i).selected) {
//调用函数yesornot,为str1赋值
var str1=yesornot(s,s.selectbox3.option(i).value);
//如果listbox1 已经有此项
if (str1=="yes") {
alert("该项已经选过");
}
//如果没有此项就添加此项
else {
var h=s.listbox1.options.length;
s.listbox1.options.length=h+1;
var o=f.listbox1.options.length-1;
s.listbox1.options(o).value=s.selectbox3.options(i).value;
s.listbox1.options(o).text= s.selectbox3.options(i).text;
}
}
}
}
}
//查找listbox1是否已经有要添加的项
function yesornot(t,str){
for (var j=0;j<t.listbox1.length;j++){
if (t.listbox1.options(j).value==str) {
return "yes"
break;
}
else {
return "not"
}
}
}
//测试调用函数yesornot
alert(yesornot(window.f,"ddd"));
</script>
</body>
</html>