javascript - val() 循环可能性与 each() 相反

标签 javascript jquery

<分区>

所以有点假设性的问题(如果有另一篇文章有​​同样的问题,请不要犹豫,让我知道 - 虽然我没有找到)

因此,.val() 方法返回与选择器匹配的第一个元素的当前值。是否有另一种“速记”jquery 方法获取所有匹配元素的值并返回一个数组?

或者我这样做最安全吗:

var myResult = [];
$(".myClass").each(function(){
    myResult.push($(this).val());
});

正如我上面所说,我正在寻找一些东西,但可能只是我必须使用 .each()

最佳答案

不,没有速记。但是,有一个比您的方法更短的方法:

var myResult = $(".myClass").map(function(){
    return this.value;
}).get();

如果你真的想,你可以创建自己的速记:

$.fn.getValAsArray = function(){
    return this.map(function(){ return this.value; }).get();
};

var myResult = $(".myClass").getValAsArray();

还有几个选择:

$.map

var myResult = $.map($.makeArray($(".myClass")),function(input){
    return input.value;
});
// or
var myResult = $.map($(".myClass").get(),function(input){
    return input.value;
});

[].map

var myResult = $.makeArray($(".myClass")).map(function(input){
    return input.value;
});
// or
var myResult = $(".myClass").get().map(function(input){
    return input.value;
});

关于javascript - val() 循环可能性与 each() 相反,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17734240/

相关文章:

javascript - 如何在 Fuelux 上设置寻呼

javascript - 一次打开一行详细信息数据表?

javascript - 如何使用 Javascript 停止页面刷新

javascript - 如何通过单击链接在 Bootstrap 模式中打开特定的可折叠面板

javascript - 如何获取字符范围

javascript - react protected 路线

javascript - jQuery 引用模板字段中的控件 ID

javascript - 将表的特定 TD 元素转换为使用预填充选项进行选择

php - Jquery 和联系表单验证

javascript - 删除全局命名空间以启用延迟脚本加载