从表单中的所有选定元素中获取所有选定的选项元素

时间:2012-09-17 11:01:08

标签: jquery select jquery-selectors

大家好,感谢您抽出宝贵时间回答我的问题。

我有一个包含6个选择元素的表单,其类别为“skillLevel”。我需要使用jQuery获取(最好在数组中)每个select元素的值。

我该怎么做?

7 个答案:

答案 0 :(得分:21)

您可以使用map方法:

var arr = $('select.skillLevel').map(function(){
              return this.value
          }).get()

arr是一组值。

答案 1 :(得分:11)

    var array = [];
    $('.skillLevel  option:selected').each(function() {
        array[ $(this).val()] = $(this).text();
    });

答案 2 :(得分:6)

这样的事情会为你做到这一点。

var val = new Array();

$("select.skillLevel").each(function(){
    val.push(this.value);
});

答案 3 :(得分:3)

将其用作

$(".skillLevel option:selected").each(function () {
            alert($(this).text());
});

看看这个小提琴

http://jsfiddle.net/zF6HY/1/

礼貌来自:JqueryApi

答案 4 :(得分:2)

希望这个小提琴可以帮助你: All selected options

答案 5 :(得分:1)

我认为你必须使用$(".skillLevel")来选择你想要值的所有元素,然后迭代它们,并使用.val()来提取每个元素的值,并将其视为你想要的。

希望这有帮助!

答案 6 :(得分:0)

您还可以将map方法与这样的ES6箭头功能一起使用。

var arr = $('select.skillLevel').get().map(e => e.value)

正如接受的答案一样,arr是一个值数组。