复选框onclick取消选中其他复选框

时间:2010-12-15 03:50:01

标签: php javascript jquery

我有6个复选框,每个工作日一个,一个说“全部”。

如果有人点击“全部”复选框,我希望能够取消选中所有其他框。

例如,如果某人点击了星期一和星期三...然后他们进来并单击“全部”复选框,则应取消选中星期一和星期三复选框。

干杯,

2 个答案:

答案 0 :(得分:4)

这不是你想要的,但似乎更明智。

HTML

<input type="checkbox" id="chkAll" />
<br />
<input type="checkbox" id="chkMonday" class="child" />
<input type="checkbox" id="chkTuesday" class="child" />
<input type="checkbox" id="chkWednesday" class="child" />
<input type="checkbox" id="chkThursday" class="child" />
<input type="checkbox" id="chkFriday" class="child" />
<input type="checkbox" id="chkSaturday" class="child" />
<input type="checkbox" id="chkSunday" class="child" />

JQUERY

$(function(){
    $("#chkAll").change(function(){
        if (this.checked) {
            $("input:checkbox.child").attr("checked", "checked");
        }
        else {
            $("input:checkbox.child").removeAttr("checked");
        }
    });
});

查看working demo

请参阅updated version处理子项复选框。{/ p>

答案 1 :(得分:1)

jquery和这样的代码应该这样做。

$('#all-id').change(function(){
   if($('#all-id').is(':checked')){
     if($('#monday-id').is(':checked')){
        $('#monday-id').attr('checked', false);
     } else {
       $('#monday-id').attr('checked', true);
     }
     // etc
   }
});

您可能希望将所有ID放入数组并设置循环或使用文档结构来轻松循环所有这些复选框