jquery-遍历复选框并确定是否选中

jquery-遍历复选框并确定是否选中,jquery,checkbox,Jquery,Checkbox,我想遍历复选框div并确定是否选中了复选框1、复选框2、复选框3 // iterate over checkboxes $('#register_students').click(function() { $("div.checkboxes").each(function() { var student = $(this).attr('data'); var chec

我想遍历复选框div并确定是否选中了复选框1、复选框2、复选框3

    // iterate over checkboxes
    $('#register_students').click(function() { 
        $("div.checkboxes").each(function() {           
            var student = $(this).attr('data');             
            var checkbox1 = ??? 
            var checkbox2 = ???
            var checkbox3 = ???
        });     
        return false;
    });




<td>
<div class='checkboxes' data=8255>
<INPUT type="checkbox"  value="36" class="checkbox1">
<INPUT type="checkbox"  value="14" class="checkbox2">
</div>
</td>

<td>
<div class='checkboxes' data=8244>
<INPUT type="checkbox"  value="36" class="checkbox1">
<INPUT type="checkbox"  value="14" class="checkbox2">
<INPUT type="checkbox"  value="14" class="checkbox3">
</div>
</td>
//遍历复选框
$(“#注册#U学生”)。单击(函数(){
$(“div.checkbox”)。每个(函数(){
var student=$(this.attr('data');
var checkbox1=???
var checkbox2=???
var checkbox3=???
});     
返回false;
});

使用了
:选中的
选择器

编辑:

对于这样的例子,我会在上试一试。。。帮助很大

用这个

$(this).is(':checked')
返回
true
false
。像

$('#register_students').click(function() {
    $("div.checkboxes").each(function(index1) {
        var student = $(this).attr('data');
        cb = [];           
        $('input[type=checkbox]',this).each(function(index2, Element){
           cb[index2] = $(Element).is(':checked');
        });
        // use 'cb' and 'student' as you want. 3 checkbox value are as cb[0], cb[1], cb[2]
    });     
    return false;
});

您正在对包含复选框的
div进行交互,因此需要
查找您的复选框

(您可能还应该缓存
$(this)
,以避免多次调用):


三个复选框行将分别返回一个布尔值,指示当前div中复选框的选中位置。

是否始终有3个复选框?在您的第一个html块中,只有2个。@GenericTypeTea:好问题@罗杰·罗孚:是否因为一个div中可能有数量可变的复选框,所以需要遍历这些复选框?可能是零个或多个复选框。(通常为3-25)我宁愿使用选择器,也不愿比较值。但这只是一个问题或偏好;-)
$(此)
将引用
div
本身,对吗?我们需要为
div
@DLH中的复选框设置一个选择器,如我的回答中所述below@Wiseman:的确如此。既然你的修正了,我就投了更高的票@DLH:我打算给你指路,所以答案简短而甜蜜。阅读讨论后更新。谢谢你。我想你是说
:选中了
,而不是
。选中了
。哎呀!好地方。一次打字+2次复印/粘贴检查括号。。。var checkbox1=$(this.find('input.checkbox1')。是(':checked');
    $("div.checkboxes").each(function() {
        var $this = $(this);           
        var student = $this.attr('data');             
        var checkbox1 = $this.find('input.checkbox1').is(':checked'); 
        var checkbox2 = $this.find('input.checkbox2').is(':checked'); 
        var checkbox3 = $this.find('input.checkbox3').is(':checked'); 
    });     
    return false;