我需要帮助解决这个简单的问题。我有一个多选输入框,我想使用javascript获取所选参数的值。问题是,当我使用时:
x=document.form.box.value;
表格如下:
<form name="form">
<select name="box" multiple>
<option value="a">A</option>
<option value="b">B</option>
</select>
</form>
我总是只选择第一个选项。我需要将所有选定选项的值作为字符串获取,理想情况下用逗号分隔。如果我例如选择A,我得到A,如果B,我得到B,但是当我选择A和B时,我再次得到A.
有什么想法吗?
答案 0 :(得分:2)
首先提供您的选择框和ID,这将使其可通过标准调用访问:
<select name="box" id="box" multiple>
<option value="a">A</option>
<option value="b">B</option>
</select>
然后你可以循环通过各个选项,只追加选择的选项:
var sel = document.getElementById("box")
var sResult = "";
for (var i = 0; i < sel.options.length; i++) {
if (sel.options[i].selected){
sResult += sel.options[i].value + ','
}
}
if (sResult.length > 1) sResult = sResult.substring(0,sResult.length-1);