我需要将多选列表中的选项添加到数组中,并确保如果用户取消选择其中一个选项,则会从数组中删除它。我已经研究了切片和推送数组方法,但我还是JavaScript的新手。这是我的选择列表:
<select id="topic" multiple>
<option value="general">General</option>
<option value="feedback">Feedback</option>
<option value="question">Question</option>
<option value="concern">Concern</option>
<option value="request">Request</option>
</select>
答案 0 :(得分:1)
这样的事情怎么样?
var values = [];
var select = document.getElementById('topic');
select.addEventListener('change', function() {
values = [];
for (var i = 0; i < select.selectedOptions.length; i++) {
var option = select.selectedOptions[i];
values.push(option.value);
};
console.log(values);
});