1

好的,所以我有这段代码非常适合检查和取消选中表单中的所有复选框。但是,如果您将它们全部检查然后不检查它们然后尝试再次检查所有没有任何反应。

可以做些什么来解决这个问题?

$('#yearall').click(function() {
    var c = this.checked;
    $('.year:checkbox').prop('checked',c);
});
$('#yearNone').click(function() {
    var c = this.checked;
    $('.year:checkbox, #yearall').removeProp('checked',c);
});

我在这里提琴http://jsfiddle.net/nf75M/

4

1 回答 1

2

改变

$('#yearNone').click(function() {
    var c = this.checked;
    $('.year:checkbox, #yearall').removeProp('checked',c);
});

$('#yearNone').click(function() {
    $('.year:checkbox, #yearall').prop('checked',false);
});

删除该属性后,您将无法再在#yearAll单击处理程序中设置它。

小提琴

于 2013-09-18T18:03:35.483 回答