我在循环中有一个复选框,我想使用 jquery 来检查所有并取消检查所有。我已经实现了 Jquery 全选和取消全选功能,但是,它仅在检查 checkall 标记的复选框后才检查循环中的第一个复选框。我怎样才能正确地实现这一点?代码如下所示。谢谢。
查看:
<div><input type="checkbox" class="check_all"> Check all</div>
<?php
$cnt=0;
echo form_open('students/del_student/'.$tennant_id);
foreach($data_student as $row)
{
$cnt++;
echo"<input type='hidden' name='course_occasion_id' value=".$row->course_occasion_id.">";
?>
<address>
<div class="row-fluid">
<div class="span2"><input type='checkbox' name='student_id[]'id="student_id" value="<?php echo $row->id;?>" ></div>
<div class="span4"><?php echo anchor("students/student/$row->id/$tennant_id",$row->first_name);?></div>
<div class="span4"><?php echo $row->last_name;?> </div>
<div class="span2"><?php echo $row->status;?> </div>
</div>
</address>
<?php
}
?>
Javascript:
<script type="text/javascript">
$('.check_all').on('click', function () {
$("#student_id").prop('checked', $(this).prop('checked'));
});
</script>
输出:
最佳答案
您正在使用相同的 ID 创建每个复选框:
id="student_id"
ID 在整个页面中应该是唯一的。
相反,将其更改为一个类,例如class="student_id"
并更改选择器以查找类(class):
$(".student_id").prop('checked', $(this).prop('checked'));
关于javascript - 如何在循环中实现Jquery复选框全选/取消全选功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17650116/