Javascript 选中一个复选框并禁用其他复选框

Javascript 选中一个复选框并禁用其他复选框,javascript,jquery,Javascript,Jquery,我正在尝试选择一个复选框并禁用所有其他复选框。问题是我正在想办法做相反的事情。取消选中并启用所有复选框 Html: 这是一个复选框的动态列表 <input type="checkbox" id="mycheckbox1"/> <input type="checkbox" id="mycheckbox2"/> <input type="checkbox" id="mycheckbox3"/> 在事件处理程序中使用not()以所有其他事件为目标要简单得多 使用选

我正在尝试选择一个复选框并禁用所有其他复选框。问题是我正在想办法做相反的事情。取消选中并启用所有复选框

Html: 这是一个复选框的动态列表

<input type="checkbox" id="mycheckbox1"/>
<input type="checkbox" id="mycheckbox2"/>
<input type="checkbox" id="mycheckbox3"/>

在事件处理程序中使用
not()
以所有其他事件为目标要简单得多

使用
选中的
当前状态复选框确定禁用状态

$(':checkbox')。更改(函数(){
//“此”是当前复选框
$(':checkbox').not(this.prop('disabled',this.checked));
});

在事件处理程序中使用
not()
以所有其他事件为目标要简单得多

使用
选中的
当前状态复选框确定禁用状态

$(':checkbox')。更改(函数(){
//“此”是当前复选框
$(':checkbox').not(this.prop('disabled',this.checked));
});

var checkboxlist=$(“输入:复选框”);
$('.checkbox')。打开(“更改”,函数(){
var itemId=$(this.attr(“id”);
如果($(this).is(':checked')){
$.each(复选框列表、函数(索引、值){
变量id=$(值).attr(“id”);
如果(!(itemId==id)){
$(值).attr(“已禁用”、“为真”);
} 
});
}否则{
$.each(复选框列表、函数(索引、值){
变量id=$(值).attr(“id”);
如果(!(itemId==id)){
$(值).attr(“禁用”、“假”);
} 
});
}
})
var checkboxlist=$(“输入:复选框”);
$('.checkbox')。打开(“更改”,函数(){
var itemId=$(this.attr(“id”);
如果($(this).is(':checked')){
$.each(复选框列表、函数(索引、值){
变量id=$(值).attr(“id”);
如果(!(itemId==id)){
$(值).attr(“已禁用”、“为真”);
} 
});
}否则{
$.each(复选框列表、函数(索引、值){
变量id=$(值).attr(“id”);
如果(!(itemId==id)){
$(值).attr(“禁用”、“假”);
} 
});
}
})

听起来像是你想要实现的目标,单选按钮列表可能更合适

<input type="radio" name="myRadio" value="myRadio1"/>
<input type="radio" name="myRadio" value="myRadio2"/>
<input type="radio" name="myRadio" value="myRadio3"/>

听起来,对于您想要实现的目标,单选按钮列表可能更合适

<input type="radio" name="myRadio" value="myRadio1"/>
<input type="radio" name="myRadio" value="myRadio2"/>
<input type="radio" name="myRadio" value="myRadio3"/>


只是为了检查,您的代码现在是否要重新启用复选框?因为您仍然有
$(value).attr(“disabled”,“true”)
而不是
$(value).attr(“禁用”、“错误”)否,这是禁用它们的代码,我正在寻求帮助,了解如何通过单击相同的复选框来反转它。只是为了检查,您的代码现在要重新启用复选框吗?因为您仍然有
$(value).attr(“disabled”,“true”)
而不是
$(value).attr(“禁用”、“错误”)不,这是禁用它们的代码,我正在寻找帮助,如何通过单击我成功地完成这一操作的相同复选框来反转它,我所追求的是“再次单击相同的复选框,启用所有其他”请参阅更新…我根据
这个找到了您的意图并简化了它。选中
我知道必须有一种更简单的方法,我会接受这个我已经设法做到了这一点,我想要的是“一旦我再次点击相同的复选框,启用所有其余的”见更新…我明白了你的意图,并根据
这一点简化了它。选中了
我知道必须有一个更简单的方法,我会接受这个谢谢,代码段中有一个错误不编译。抱歉。最初忘记包含jQueryTanks,代码段中有一个错误未编译,请道歉。最初忘记包含jQuery