以HTML格式获取输入值

时间:2013-08-14 22:50:18

标签: html forms input

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

有什么想法吗?

1 个答案:

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

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