使用JQuery查找和计算复选框的数量

时间:2012-05-01 18:01:05

标签: jquery html

我在页面上有一个表单,在该表单中,表格中的每一行都有一个复选框。我需要计算具有已检查行的行数,但我甚至无法从jQuery中选择它。

这是我的代码看起来像一个复选框:

<input type="checkbox" id="onHomePage_56" name="onHomePage" 
    value="56" checked="checked">

未经检查的框未检查=&#34;已检查&#34;。

4 个答案:

答案 0 :(得分:7)

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;

答案 1 :(得分:2)

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;

答案 2 :(得分:1)

你可以试试这个:

$('#form input:checkbox:checked').length;

答案 3 :(得分:-1)

$('#myForm table tr td input:checked')​.size();​

DEMO.

更新:最好过滤type,因为您也可以检查单选按钮

$('#myForm table tr td input[type="checkbox"]:checked').size();

Demo with checked radio buttons