0

在JSFIDDLE上看到了这一点,我想知道如何更改它,以便在且仅在检查45时禁用其余部分,如果未选择45,则启用其余部分。我应该能够在不提交表单的情况下完成所有这些工作。

jsfiddle 上的示例 javascript:

$(function(){
    $(".rambo").change(function(){
        $(this).siblings().attr("disabled", $(this).is(":checked"));  
    });
});
4

5 回答 5

1

您可以使用attribute selector.

$(function(){
    $(".rambo[value=1]").change(function(){
        $(this).siblings().prop("disabled", this.checked);  
    });
});

http://jsfiddle.net/Mnmte/

于 2013-01-17T00:06:29.600 回答
0

只需添加适当id的 s 并选择它

HTML:

<input type="checkbox" id="cb1" class="rambo" value='1' /> 45 
<input type="checkbox" id="cb2" class="rambo" value='2' /> 56 
<input type="checkbox" id="cb3" class="rambo" value='3' /> 56

JS:

$(function(){
    $("#cb1").change(function(){
        $(this).siblings().attr("disabled", $(this).is(":checked"));  
    });
});

JSFiddle

于 2013-01-17T01:19:20.327 回答
0

从所有答案中,您还可以指定您只希望第一个checkbox使用nth-child选择器执行脚本:

$(".rambo:nth-child(1)").change(function(){
    $(this).siblings().attr("disabled", $(this).is(":checked"));  
});

演示

于 2013-01-17T00:08:53.217 回答
0

从其他人那里删除 .rambo 类。

于 2013-01-17T00:06:04.120 回答
0
$(function(){
    $(".rambo").change(function(){
      if($(this).val() == 1){
        $(this).siblings().attr("disabled", $(this).is(":checked"));  
      }
    });
});

单程

于 2013-01-17T00:06:08.560 回答