我使用过代码:
<script type="text/javascript">
$(window).load(function () {
$(document).delegate(".checkall", "click", function(event) {
$(this).closest("table").find(':checkbox').attr('checked', this.checked);
});
});
</script>
第一次选择/取消选中标题中的复选框时,此代码正常工作。但是当我再次选中复选框时,此代码无效。未选中复选框。
答案 0 :(得分:0)
您应该使用.prop()
代替.attr()
。你必须检查一个元素是否已被检查。
...
var $checkbox = $(this).closest("table").find(':checkbox');
if ($checkbox.is(':checked')) $checkbox.prop('checked', false);
else $checkbox.prop('checked', true);
...