jQuery if checkbox已选中其他复选框

jQuery if checkbox已选中其他复选框,jquery,html,checkbox,Jquery,Html,Checkbox,我有HTML代码: <input type="checkbox" name="all" value="all">ALL <input type="checkbox" name="agent" value="agent" >Agent <input type="checkbox" name="company" value="company">Company <input type="checkbox" name="branch" value="br

我有HTML代码:

 <input type="checkbox" name="all" value="all">ALL
 <input type="checkbox" name="agent" value="agent" >Agent
 <input type="checkbox" name="company" value="company">Company
 <input type="checkbox" name="branch" value="branch">Branch

您的代码只执行禁用的部分。您应该使用
checked
value作为禁用属性,根据选中/取消选中状态切换状态:

var subinputs=$(“输入[name=agent],输入[name=company],输入[name=branch]”);
$(“输入[name='all']”)。更改(函数(){
子输入.prop(“已禁用”,此项已选中);
});

全部的
代理人
单位

分支机构
请检查下面的代码,还有许多其他方法,但对于您的HTML,这就是您执行此操作的方法

$(“输入[name='all']”)。更改(函数(){
如果(选中此项){
$(this).sides('input:checkbox').prop(“disabled”,true);
}
否则{
$(“输入[type='checkbox']);
}
});

全部的
代理人
单位
分支机构
添加缺少的其他:

    $("input[name='all']").change(function() {
if(this.checked) {
            $("input[name='all'] input").prop("disabled",true);
}
else{
        $("input[name='all'] input").prop("disabled",false);
}});

绑定更改处理程序,然后只需取消选中所有复选框,除了选中的复选框:

$('input').on('change', function() {
$('input').not(this).prop('checked', false);   });
//我在第一个复选框中添加了一个id字段,并在其余复选框中添加了一个类。
//此代码正在运行。您可以使用此
$(函数(){
$(“#所有员工”)。在('click',function()上{
如果($(this).is(':checked')==true){
$('.employee').prop('disabled','disabled');
}否则{
$('.employee').prop(“已禁用”,false);
}
});
});

全部的
代理人
单位

Branch
@MilindantWar我在下面写了一个检查来启用它,并尝试一下这个演示,你会看到它工作得很好。$(“input[name='all']”)。removeAttr(“disabled”);这是从所有中删除禁用的attr的行--@krishnaveni实际上这是通用的解决方案,您要添加多少复选框,添加您不需要在Jquery中进行任何更改。对于n个复选框,它可以正常工作。
$('input').on('change', function() {
$('input').not(this).prop('checked', false);   });