Javascript 如何使用jquery将多选下拉列表的所有项(选项)转换为数组

Javascript 如何使用jquery将多选下拉列表的所有项(选项)转换为数组,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试使用jquery将多个select下拉列表值(所有选项)转换为一个数组 <select size="10" style="width: 330px;" name="itemList" id="selectedItemLists" multiple="multiple"> <option value="1">value1</option> <option value="2">value2</option

我正在尝试使用jquery将多个select下拉列表值(所有选项)转换为一个数组

<select size="10" style="width: 330px;" name="itemList"
        id="selectedItemLists" multiple="multiple">
    <option value="1">value1</option>
    <option value="2">value2</option>
    <option value="3">value3</option>
    <option value="4">value4</option>
</select>

价值1
价值2
价值3
价值4
现在使用jquery如何创建类似数组[0]=value1,数组[1]=value2的数组

请帮我做这件事


提前谢谢。

可能类似于:

var options = new Array();
$('#selectedItemLists > option:selected').each(
     function(i){
         options[i] = $(this).val();
     });


针对@mellamokb的评论进行编辑,将jQuery修改为使用
text()
而不是
val()

参考资料:

    • 您也可以使用来完成此任务

      var i = $.map($("#selectedItemLists option:selected"), function(elem){
          return $(elem).text();
      });
      

      jQuery
      map
      方法在这里很有用

      $('select option').map(function(index, elem){
          return $(elem).text();
      });
      

      (Mark抢先告诉了我,但我的使用了收集的
      map
      方法,而不是“静态”jQuery.map函数。当然,两者都很好。)

      所有选项,或者所有选择的选项?+1从技术上讲,对于OP的要求,我想您需要
      .text()
      我认为在JavaScript中初始化数组的首选方法是
      []
      ,而不是
      new array()
      $('select option').map(function(index, elem){
          return $(elem).text();
      });