17

大家好,感谢您花时间回答我的问题。

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

我怎样才能做到这一点?

4

7 回答 7

33

您可以使用map方法:

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

arr是一个值数组。

于 2012-09-17T11:05:51.027 回答
16
    var array = [];
    $('.skillLevel  option:selected').each(function() {
        array[ $(this).val()] = $(this).text();
    });
于 2012-09-17T11:07:03.840 回答
7

像这样的东西会为你做到这一点。

var val = new Array();

$("select.skillLevel").each(function(){
    val.push(this.value);
});
于 2012-09-17T11:06:10.673 回答
3

用它作为

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

看看这个小提琴

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

礼貌:JqueryApi

于 2012-09-17T11:09:05.847 回答
2

希望这个小提琴对您有所帮助: 所有选定的选项

于 2012-09-17T11:11:33.477 回答
2

你也可以map像这样使用带有 ES6 箭头函数的方法。

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

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

于 2020-03-31T23:44:46.767 回答
1

我认为你必须使用$(".skillLevel")来选择你想要的值的所有元素,然后遍历它们,并使用.val()来提取每个元素的值,并按照你的意愿对待它。

希望这可以帮助!

于 2012-09-17T11:06:58.610 回答