选中所有复选框
我有一个带复选框的表,我想要“检查所有”和“取消全部检查”复选框,但我找不到检查所有复选框的方法。
这是我的代码:
$(document).ready(function() { $('.chk_boxes').click(function(){ $('.chk_boxes1').attr('checked',checked) }) });
$(function() { $('.chk_boxes').click(function() { $('.chk_boxes1').prop('checked', this.checked); }); });
这仅影响check all
框。 但是为什么你还想要使用两个复选框呢? 一个检查所有和一个取消选中所有,但不互斥。 那必须是混淆用户的秘诀:)
尝试使用true|false
。 像这样:
$('.chk_boxes1').attr('checked',true);
附加评论:
此外,看起来你的un-并且检查所有复选框都是多余的。
check all un-check all
您可以只使用一个复选框来执行这两项操作,而不是这样做。 因此,您的jQuery将如下所示:
$(document).ready(function() { $('.chk_boxes').click(function(){ $('.chk_boxes1').attr('checked',$(this).attr('checked')); }) });
使用HTML:
check all
请参阅此处的工作解决方案http://jsfiddle.net/HBGzy/
你不需要使用“ uncheck all ”复选框:)
$('.chk_boxes').click(function(){ var chk = $(this).attr('checked')?true:false; $('.chk_boxes1').attr('checked',chk); });
你忘记了引号:
$('.chk_boxes1').attr('checked','checked')
小提琴: http : //jsfiddle.net/8ZHFn/
试试这个
$(".chk_boxes").click(function() { var checked_status = this.checked; $(".chk_boxes1").each(function() { this.checked = checked_status; }); });
因此,如果在检查或取消选中类chk_boxes
的复选框时要影响的所有复选框的类名是chk_boxes1
这将获取所有元素并相应地设置checked属性。
我认为你应该使用复选框属性的true或false。
关于全部检查/取消选中全部的建议..正如我在选择全部检查后的想法,如果用户点击任何checkbox1,则应取消选中全部复选复选框,如果用户逐个选中所有复选框,则不勾选所有复选框应该被选中。 所以我建议你在使用check all / uncheck all时尝试这个。
$(document).ready(function() { $('.chk_boxes').click(function(){ $('.chk_boxes1').attr('checked',$(this).attr('checked')); }) $('.chk_boxes1').click(function(){ if($('.chk_boxes1').length == $('.chk_boxes1:checked').length) $('.chk_boxes').attr('checked',checked) else $('.chk_boxes').attr('checked',false) }) });