在 jQuery 中获取所有选定复选框值的最佳方法

IT技术 javascript jquery asp.net
2021-01-28 08:05:33

我正在寻找通过 jQuery 选择的所有复选框的值。

1个回答

您需要:checkbox:checked选择器并map创建一个值数组:

var checkedValues = $('input:checkbox:checked').map(function() {
    return this.value;
}).get();

如果您的复选框有一个共享类,那么使用它会更快,例如。$('.mycheckboxes:checked'), 或通用名称$('input[name="Foo"]:checked')

- 更新 -

如果您不需要 IE 支持,那么您现在可以map()使用箭头函数使调用更加简洁:

var checkedValues = $('input:checkbox:checked').map((i, el) => el.value).get();
.join(',') 这样做
2021-03-12 08:05:33
我在不使用 .join(') 的情况下得到了逗号分隔值。我正在使用 jQuery 1.10.2。感谢您为我节省了时间和额外的不必要的代码行,对我来说它完美无缺。
2021-03-23 08:05:33
@vaso123 这是个人偏好,因为性能差异很小,但我不认为为this.
2021-03-24 08:05:33
像魅力一样工作,我更喜欢它作为逗号分隔的字符串......
2021-04-05 08:05:33
好吧,代码应该按照最好的标准编写,而不是最低标准,这样没有经验的开发人员也能理解。
2021-04-09 08:05:33