我在页面上有一个表单,在该表单中,表格中的每一行都有一个复选框。我需要计算具有选中行的行数,但即使从 jQuery 中选择它,我也遇到了麻烦。
下面是我的复选框代码的样子:
<input type="checkbox" id="onHomePage_56" name="onHomePage"
value="56" checked="checked">
未选中的框没有选中="已选中"。
var q = $('form#id-of-form').find('input:checked').length;
http://api.jquery.com/checked-selector/
如果表单中有您不想计数的复选框,请将一个类添加到您想要计数的类别中,然后选择这些复选框:
var q = $('form#id-of-form').find('input.count-these:checked').length;
jQuery 为此提供了特殊的选择器:
$('input:checked').length
更具体地说:
var num = $('#myform input:checkbox:checked').length;
我添加了 jQuery :checkbox
选择器:checked
因为它也适用于单选按钮。 从技术上讲,:checkbox
比现代浏览器中的[type=checkbox]
慢,但它们做同样的事情:
var num = $('#myform input[type=checkbox]:checked').length;
你可以试试这个:
$('#form input:checkbox:checked').length;
$('#myForm table tr td input:checked').size();
演示。
更新:最好过滤type
因为您也可以选中单选按钮
$('#myForm table tr td input[type="checkbox"]:checked').size();
带有选中单选按钮的演示