You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修正选中Option2单选框时误禁用Option1单选框的问题?

解决单选按钮组的选择性禁用问题

你的问题根源在于给所有单选按钮都绑定了点击事件——不管点击的是哪个组的选项,都会执行禁用"option 1"组未选中项的逻辑,所以点击Option2的单选框时也会触发这个不该有的操作。

只需要把事件绑定的范围缩小到"option 1"组的单选按钮上,就能精准控制触发逻辑。另外,对于disabled这类布尔属性,jQuery更推荐使用prop()方法而非attr(),设置状态会更可靠。

修正后的jQuery代码如下:

$(":radio[name='option 1']").click(function() {
  var radioName = "option 1";
  $(":radio[name='" + radioName + "']:not(:checked)").prop("disabled", true);
});

代码说明:

  • 首先通过$(":radio[name='option 1']")精准定位"option 1"组的所有单选按钮,只为它们绑定点击事件。
  • 当用户点击该组内的任意选项时,才会触发逻辑:找到同组内未被选中的单选按钮,用prop("disabled", true)禁用它们。
  • 点击其他组(比如"option 2")的单选按钮时,这个事件不会被触发,所以"option 1"组的状态完全不受影响。

如果后续需要支持重置单选组状态的场景,还可以扩展逻辑添加启用操作,但根据你的核心需求,上面的代码已经能完美解决问题了。

内容的提问来源于stack exchange,提问作者neek05

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 10:05:59