【发布时间】:2020-12-27 17:58:04
【问题描述】:
我有一个多重选择,如下所示
<select name="cars" id="cars" multiple>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
我已经实现了选择的插件,我有一个 onchange 侦听器,可以像这样将选定的元素添加到数组中
$("#cars").change(function () {
var selected = [];
for (var option of document.getElementById('cars').options) {
if (option.selected) {
selected.push(option.value);
}
}
console.log(selected);
});
但是,无论在哪个选项中,我选择的项目总是按照它们在多选中的顺序排列 例如,通过按顺序选择值 Volvo、Audi、Saab 会产生以下数组
Array [ "Volvo" ]
Array [ "Volvo", "Audi" ]
Array(3) [ "Volvo", "Saab", "Audi" ]
有没有一种方法可以将多选中的元素按照选择的顺序添加到数组中?
【问题讨论】:
标签: javascript select