在jquery中禁用所有未选中的类复选框

kha*_*esh 3 checkbox jquery class

我想在选中该类中的一个复选框时禁用所有未选中的复选框,所以我尝试了这个

if ((($('input[type=checkbox]:checked.classname)).length)==1) {

    $('.classname').not(':checked').each(function(){
                        $(this).attr('disabled','disabled');
                        });
Run Code Online (Sandbox Code Playgroud)

我也试过这个

    $("input[type=checkbox]."+aclass).not(':checked').attr('disabled',true);
Run Code Online (Sandbox Code Playgroud)

这段代码没有禁用任何复选框,虽然我使用这个选择器获得正确的长度?

Pau*_*aul 11

试试这个:

$('.test').change(function(){
    if($('input.test').filter(':checked').length == 1)
        $('input.test:not(:checked)').attr('disabled', 'disabled');
    else
        $('input.test').removeAttr('disabled');
});?
Run Code Online (Sandbox Code Playgroud)

的jsfiddle


Sin*_*eta 5

这个话题已经被打死了.共识是使用具有某种"无"选项的单选按钮.这样,您就可以避免将新功能编码到用户满足某些期望的控件中.