将javascript中不同选择的选项存储到数组中

Store into an array selected options from differents selects with javascript

本文关键字:选项 存储 数组 选择 javascript      更新时间:2023-09-26

我有n个这样的选择:

<select id="select1">
        <option value="1">test1</option>
        <option value="2" selected="selected">test2</option>
        <option value="3">test3</option>
    </select>
    <select id="select2">
        <option value="1">asdf</option>
        <option value="2" selected="selected">fdsa</option>
        <option value="3">asdf</option>
    </select>

我想在每个选项中选择一个选项,然后单击一个按钮,这些选项存储到一个数组中,这样我就可以像JSON一样格式化它。我有以下代码为一个选项工作:

<button onClick="GetSelectedItem('select1');">Get Selected Item</button>

var arr1 = [];
    function GetSelectedItem(el)
    {
        var e = document.getElementById(el);
        var strSel =e.options[e.selectedIndex].text;
        arr1.push(strSel);
        console.log(arr1);
    }

,但我不知道如何做到这一点超过1选择。

这应该适合您。

function getSelectedItems() {
  var elements = document.getElementsByClassName('selectVal');
  var results = [];
  for (var i = 0; i < elements.length; i++) {
    var element = elements[i];
    var strSel = element.options[element.selectedIndex].text;
    results.push(strSel);
  }
  console.log(results);
}
<select id="select1" class="selectVal">
  <option value="1">test1</option>
  <option value="2" selected="selected">test2</option>
  <option value="3">test3</option>
</select>
<select id="select2" class="selectVal">
  <option value="1">asdf</option>
  <option value="2" selected="selected">fdsa</option>
  <option value="3">asdf</option>
</select>
<button onClick="getSelectedItems()">Get Selected Item</button>