0

我需要帮助解决这个简单的事情。我有一个多选输入框,我想使用 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。

有任何想法吗?

4

1 回答 1

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);

工作示例:http: //jsfiddle.net/LGCY6/2/

于 2013-08-15T00:26:39.663 回答