This question already has answers here:
How to get all selected values of a multiple select box?
                                
                                    (15个答案)
                                
                        
                                4年前关闭。
            
                    
我需要将多个选择列表中的选项添加到阵列中,并确保如果用户取消选择其中一个选项,则会将其从阵列中删除。我已经研究了slice和push数组方法,但是我还是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>

最佳答案

这样的事情怎么样?

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);
});


例如:http://jsbin.com/xayuge/1/

关于javascript - 将用户选择添加到阵列中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29336360/

10-12 00:04
查看更多