我在javascript中有一个函数,允许我选择多个选项,但它只选择第一个选项。
使用Javascript:
function index(){
var a="${staffindex}".replace("[","");
var b=a.replace("]","");
var index1=b.split(",");
for(var i=0;i<index1.length;i++)
document.getElementById("Staff")[index1[i]].selected=true;
}
HTML:
<select multiple="multiple" id="Staff" name=staff>
<option value = "1" >option1</option>
<option value = "2" >option2</option>
<option value = "3" >option3</option>
<option value = "4" >option4</option>
<option value = "5" >option5</option>
</select>
index1是从java类接收的数字数组 谢谢你的帮助!
答案 0 :(得分:1)
您忘记使用options
数组:
document.getElementById("Staff").options[index1[i]].selected=true;
答案 1 :(得分:0)
getElementById()
函数只选择一个元素。此处它仅选择<select>
代码,因为它的ID为Staff
,而不是其选项。但是,您可以访问其选项
getElementById("Staff").options[option_number];
答案 2 :(得分:0)
试试这个:
function index(){
var a="${staffindex}".replace("[","");
var b=a.replace("]","");
var index1=b.split(",");
for(var i=0;i<index1.length;i++)
document.getElementById("Staff").options[index1[i]].selected=true;
}
这里options
是非常必要的!