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

点击「不感兴趣」复选框时禁用指定复选框组的问题求助

问题解决:点击复选框禁用指定区域内所有复选框

原代码的问题在于直接给<div>元素设置disabled属性,但div元素本身不支持disabled属性,所以无法实现禁用内部复选框的效果。需要遍历目标div内的所有复选框,逐个设置它们的disabled状态。

修改后的JavaScript代码

function Reassign(cb) {
    // 获取目标div内的所有复选框
    const checkboxes = document.querySelectorAll('#reassignChecks input[type="checkbox"]');
    // 根据勾选状态设置所有复选框的禁用状态
    checkboxes.forEach(checkbox => {
        checkbox.disabled = cb.checked;
    });
}

代码说明

  • 使用document.querySelectorAll('#reassignChecks input[type="checkbox"]')精准获取reassignChecks div内的所有复选框元素
  • 通过forEach循环遍历每个复选框,将它们的disabled属性设置为与notInterest复选框的checked状态一致
  • 当notInterest被勾选时,内部所有复选框禁用;取消勾选时,恢复可用

完整代码示例

HTML代码

<div>
    <input style="margin-left:30px" id="notInterest" type="checkbox" name="test" onclick="Reassign(this)"> Not Interested
</div>

<div class="form-group row" id="reassignChecks">
    @for (var i = 1; i <= 10; i++) {
        <input name="AreChecked" type="checkbox" value="@i" /> @i
        <br />
    }
    <button>Click</button>
</div>

JavaScript代码

function Reassign(cb) {
    const checkboxes = document.querySelectorAll('#reassignChecks input[type="checkbox"]');
    checkboxes.forEach(checkbox => {
        checkbox.disabled = cb.checked;
    });
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 15:17:29