2010-04-23 20 views
9

içinde işaretlenmiş onay kutularının sayısını al Bir javascript işlevi oluşturmaya çalışıyorum (jquery gayet iyi olsa da), bir formda işaretlenmiş onay kutularının sayısına karşılık gelen bir sayı döndürecektir. Yeterince basit görünüyor ama bunu yapmanın iyi bir yolunu anlayamıyorum.Javascript

Teşekkürler.

var formobj = document.forms[0]; 

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

alert('Total Checked = ' + counter); 

:

cevap

16

deneyin. JQuery ile

:

alert($('form input[type=checkbox]:checked').size()); 
+0

Sadece açıklama için - standart JS kodu bir form içinde olmayan giriş öğelerini almayacaktır. JQuery satırı olacak. – dmp

+0

@danp: evet şimdi iki yol da bir formdaki tüm onay kutularını seçecektir. – Sarfraz

+0

JQuery ile, $ ('form input [type = checkbox]: checked') gibi, kontrol edilen öğenin kimliği ile ilgili ayrıntıları nasıl alabilirim? – AKS

1

bu deneyin

$(":checkbox").filter(":checked").size() 
+1

@Yuriy Faktorovich listesinden onay kutularını kontrol: Sadece gösterim için. Şimdi kaldırdım @Sarfraz: Haklısın. Düzeltdim. – kgiannakakis

2
var chk = $('form').find('input[type=checkbox]:checked').length 
4

$('form :checkbox:checked').length

+0

.length ve .size() arasındaki fark nedir? – Mint

+0

@Mint http://stackoverflow.com/questions/2738352/jquery-size-method-vs-length-attribute –

4
var checkBoxs = $('#myForm').children('input[type="checkbox"]:checked'); 
alert(checkBoxs.length); 
0

uzun bir yol

değişir sen onay kutusunu ve yapılacak sınıf adını vermek zorunda

var chkLength = $ ('input.className: checked').

alert (chkLength);

bu gove tüm onay kutusunu