Javascript 当用户选择某个特定项时,JQUERY使复选框项处于禁用状态

Javascript 当用户选择某个特定项时,JQUERY使复选框项处于禁用状态,javascript,jquery,html,Javascript,Jquery,Html,我希望在用户单击NESSUNA时将所有其他选项设置为禁用: HTML: 要实现这一点,您可以在第一个复选框上放置一个id,在另一个复选框上放置一个公共类,以便更容易地选择它们。然后,当更改第一个checbox时,您可以通过其类启用/禁用其他checbox 还请注意,元素上的for属性不正确。它应该包含相关复选框的id,而不是名称。试试这个: $('#nessuna')。更改(函数(){ $('.checkbox').prop({ 勾选:假, 已禁用:此选项已选中 }); }) 尼苏纳 谷类粘

我希望在用户单击NESSUNA时将所有其他选项设置为禁用:

HTML:


要实现这一点,您可以在第一个复选框上放置一个
id
,在另一个复选框上放置一个公共类,以便更容易地选择它们。然后,当更改第一个checbox时,您可以通过其类启用/禁用其他checbox

还请注意,
元素上的
for
属性不正确。它应该包含相关复选框的
id
,而不是
名称
。试试这个:

$('#nessuna')。更改(函数(){
$('.checkbox').prop({
勾选:假,
已禁用:此选项已选中
});
})

尼苏纳
谷类粘蛋白
Crostacei
拿铁咖啡
Lupini
复选框中添加

<input type="checkbox" value="NESSUNA" name="allergie2[]">
<label for="allergie2"> NESSUNA </label>
<br>
<input type="checkbox" class="disable-others" value="cereali con glutine" name="allergie2[]">
<label for="allergie2"> Cereali con glutine </label>
<br>
<input type="checkbox" value="crostacei" name="allergie2[]">
<label for="allergie2">Crostacei </label>
<br>
<input type="checkbox" value="latte e lattosio" name="allergie2[]">
<label for="allergie2">Latte e lattosio </label>
<br>
<input type="checkbox" value="lupini" name="allergie2[]">
<label for="allergie2">Lupini </label>

输入:复选框[name='allergie2[cereali con glutine]]
这是一个无效的选择器。使用
[name='allergie2']、[name='cereali']、[name='con']、[name='glutine']
 $(function() {
    enable_cb();
    $("input:checkbox[name='allergie2[]'][value='NESSUNA").click(enable_cb);
});

    function enable_cb() {
    if (this.checked) {
        $("input:checkbox[name='allergie2[]'][value='cereali con glutine']").attr("disabled", true);
    } else {
        $("input:checkbox[name='allergie2[]'][value='cereali con glutine']").removeAttr("disabled");
    }
}
<input type="checkbox" value="NESSUNA" name="allergie2[]">
<label for="allergie2"> NESSUNA </label>
<br>
<input type="checkbox" class="disable-others" value="cereali con glutine" name="allergie2[]">
<label for="allergie2"> Cereali con glutine </label>
<br>
<input type="checkbox" value="crostacei" name="allergie2[]">
<label for="allergie2">Crostacei </label>
<br>
<input type="checkbox" value="latte e lattosio" name="allergie2[]">
<label for="allergie2">Latte e lattosio </label>
<br>
<input type="checkbox" value="lupini" name="allergie2[]">
<label for="allergie2">Lupini </label>
$(function() {
    $(".disable-others").click(function() {
        var current = $(this);
        current.prop("checked") ? current.siblings("checkbox").attr("disabled", true) : current.siblings("checkbox").removeAttr("disabled");
    });
});