javascript - 将用户选择添加到数组中

标签 javascript arrays list selection

我需要将多个选择列表中的选项添加到数组中,并确保如果用户取消选择其中一个选项,则会将其从数组中删除。我已经研究了切片和推送数组方法,但我对 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/

相关文章:

javascript - 如何从 iframe 内部引用 div?

c++ - 是否可以使用 1D 索引访问 C++ 2D int 数组?

javascript - 添加输入名称为 ="TotalInline[]"的所有值

Python 2.7 创建多维列表

javascript - 以编程方式合并两个 svg 路径元素

javascript - 提交表单时不要自动滚动到顶部。留在当前位置

javascript - 仅替换具有 "CRLF"和 "CRLF"行分隔符的字符串中的 "LF"

c# - 元组列表到多维数组

list - 涉及列表操作的 Lisp 练习

java - 如何使 JAXB 实例化通用父类(super class)的子类列表元素