我有一个属性<select>元素multiple.如何使用JavaScript获取此元素的选定值?
这是我正在尝试的:
function loopSelected() {
var txtSelectedValuesObj = document.getElementById('txtSelectedValues');
var selectedArray = new Array();
var selObj = document.getElementById('slct');
var i;
var count = 0;
for (i=0; i<selObj.options.length; i++) {
if (selObj.options[i].selected) {
selectedArray[count] = selObj.options[i].value;
count++;
}
}
txtSelectedValuesObj.value = selectedArray;
}
Run Code Online (Sandbox Code Playgroud) 要<input>使用 JavaScript设置元素的数据,我们像这样分配该元素的值和名称:
var form = document.createElement("form");
var element = document.createElement("input");
element.value=value;
element.name=name;
Run Code Online (Sandbox Code Playgroud)
在的情况下<select>,其中的multiple属性存在,我怎么设置选择元素的值?例如,我将如何设置myselect下面元素的值:
<form method="post" action="/post/" name="myform">
<select multiple name="myselect" id="myselect">
<option value="1">option1</option>
<option value="2">option2</option>
...
Run Code Online (Sandbox Code Playgroud)
我试图通过这样做来设置值,myselect.value=[1,2]但它不起作用。选择后option1,option2我预计它会返回[1,2],但它只返回“1”。
我有一个 HTML 选择下拉列表,其中multiple提供了:
<select multiple id="mySelect">
<option>Apple</option>
<option>Orange</option>
<option>Pineapple</option>
<option>Banana</option>
</select>
Run Code Online (Sandbox Code Playgroud)
并分配一个单击处理程序,该处理程序返回当前单击的元素的索引:
document.getElementById("mySelect").onclick = function() {
alert(this.selectedIndex);
}
Run Code Online (Sandbox Code Playgroud)
当我仅选择其中一个元素时,效果很好。但我想返回当前选择的所有索引。
当我点击Apple, Orange and Banana返回时,就像[0,1,3]我想要的那样,但它不起作用。
工作示例:JSfiddle