2013-02-27 130 views

回答

24

用jQuery做会缩短代码,并使其更具可读性,可维护性和更容易理解。使用attribute selector:checked选择

Live Demo

$('[name="cbox[]"]:checked').length 
+0

谢谢大家帮助我,我用过这个解决方案:) – user1148875 2013-02-27 11:21:00

4

jQuery的解决方案:

var len = $("[name='cbox[]']:checked").length; 

JavaScript解决方案:

var len = [].slice.call(document.querySelectorAll("[name='cbox[]']")) 
    .filter(function(e) { return e.checked; }).length; 
1

$('input:checked').length会怎么做,如果你没有任何其他输入标签不是以这种形式。

5

如果你想使用普通的JavaScript

var checkbox = document.getElementsByName('ckbox[]'); 
var ln = 0; 
for(var i=0; i< checkbox.length; i++) { 
    if(checkbox[i].checked) 
     ln++ 
} 
alert(ln) 
1

试试这个

jQuery的解决方案:

var len = $(":checked",$("input[name='cbox[]']")).size(); 
1
var fobj = document.forms[0]; 

var c = 0; 
for (var i = 0; i < formobj.elements.length; i++) 
{ 
if (fobj.elements[i].type == "checkbox") 
{ 
if (fobj.elements[i].checked) 
{ 
c++; 
} 
}  
} 

alert('Total Checked = ' + c); 
0

试试,

var boxes = $('input[name="cbox[]"]:checked'); 

找到多少检查,

$(boxes).size(); 

+0

首先,没有必要包装jQuery对象。接下来,'size'方法已被弃用,您应该使用'length'属性来代替。 – VisioN 2013-02-27 11:15:12

0
var len = $("[name='cbox[]']:checked").length; 

会工作,但不会工作,如果你是直接比较喜欢

if ($("[name='cbox[]']").length= $("[name='cbox[]']:checked").length) 
+0

Typo将它视为if($(“[name ='cbox []']”).length == $(“[name ='cbox []']:checked”)。长度) – user3089154 2013-12-11 01:09:07

0

你也该做的

你必须定义checkBox的类,然后按照下面

var chkLength = $('input.className:checked')。length; alert(chkLength);

这将打印总量不从列表复选框

0

你不妨使用下面还有

$('[name=cbox\\[\\]]:checked').length 
0

试试这个,

VAR ch_n = $( “输入:勾选”) 。长度;

相关问题