直接上代码
方法一:
//实现全选与反选
$("#allAndNotAll").click(function () {
if ($(this).prop("checked")) {
$("input[name=checkitem]:checkbox").each(function () {
$(this).prop("checked", true);
});
} else {
$("input[name=checkitem]:checkbox").each(function () {
$(this).prop("checked", false);
});
}
});
方法二:
$("#allAndNotAll").click(function () {
if ($("#allAndNotAll").prop('checked')) {
$("#allAndNotAll").prop("checked", true);
$("input[name=checkitem]:checkbox").prop("checked", true);
} else {
$("#allAndNotAll").prop("checked", false);
$("input[name=checkitem]:checkbox").prop("checked", false);
}
}); 当有一个取消选中,则取消全选:
//当其中不勾选某一个选项的时候,则去掉全选复选框
$(":checkbox[name=checkitem]").click(function () {
$("#allAndNotAll").prop('checked',
$(":checkbox[name='checkitem']").length == $(":checkbox[name='checkitem']:checked").length);
});
问题:当将所有的prop方法改为attr的时候,checkbox全选/全不选只有第一次点击的时候有效,后面点击全部无效
解决方法就是:直接使用prop方法,这是jQuery的一个bug。
本文介绍使用jQuery实现全选与反选功能的方法,并针对checkbox全选/全不选功能在使用attr方法时出现的问题提供了解决方案。
1293

被折叠的 条评论
为什么被折叠?



