我有一个选择多个的表格。我想在 onchange 事件中获得所有选定的值,但我不知道这是否可能。我认为“this.value”只返回选择的最后一个元素。
是否可以在 onchange 时将所有元素选为数组?
提前致谢。
<select name="myarray[]" id="myarray" class="select2-select req" style="width: 90%;" onChange="get_values(this.value)" multiple>
{foreach key=key item=value from=$myarray}
<option value="{$key}" >{$value}</option>
{/foreach}
</select>
最佳答案
这个例子可能会在没有 jQuery 的情况下有所帮助:
function getSelectedOptions(sel) {
var opts = [],
opt;
var len = sel.options.length;
for (var i = 0; i < len; i++) {
opt = sel.options[i];
if (opt.selected) {
opts.push(opt);
alert(opt.value);
}
}
return opts;
}
<select name="myarray[]" id="myarray" class="select2-select req" style="width: 90%;" onChange="getSelectedOptions(this)" multiple>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
关于javascript - Html select multiple 在 onchange 事件中获取所有值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30372235/