我有输入
<input name="v[]" value="1" type="checkbox">
<input name="v[]" value="2" type="checkbox">
<input name="v[]" value="3" type="checkbox">
<input name="v[]" value="4" type="checkbox">
使用此代码检查
$(document).on('click',"tbody tr", function() {
if ($(this).hasClass('info')) {
$(this).removeClass('info');
$(this).find('input[name="v[]"]').prop('checked', false);
} else {
$(this).addClass('info');
$(this).find('input[name="v[]"]').prop('checked', true);
}
});
我希望获取带有值的已检查输入数组。我怎么能这样做?
感谢。
答案 0 :(得分:3)
var values = $.map($('input[name="v[]"]:checked'), function(el,i) { return el.value });
答案 1 :(得分:0)
.serializeArray
应该这样做
$('input').on('click', function(){
console.log($('input').serializeArray());
});
获取checkbox
类型的输入的示例
http://jsfiddle.net/cbm4T/1/
$('input').on('click', function(){
console.log($('input[type=checkbox]').serializeArray());
});
答案 2 :(得分:0)
var values = $.map($('input[name="v[]"]:checked'), function(obj) {
return $(obj).val();
});
编辑:其他人打败了我。
和强>
如果由于某种原因你想要反过来。未单击的复选框及其值。
var values = $.map($('input[name="v[]"]:not(:checked)'), function(obj) {
return $(obj).val();
});