首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >取消选中复选框,另一个复选框将取消勾选。

取消选中复选框,另一个复选框将取消勾选。
EN

Stack Overflow用户
提问于 2018-04-27 11:46:52
回答 5查看 768关注 0票数 1

我在一个表格里有两个复选框。如果一个名为“电子邮件”的复选框未被选中,我如何才能让另一个复选框也取消选中(如果被选中)?

代码语言:javascript
运行
复制
document.getElementById('email').onclick = function() {
     if (!this.checked) {
        !document.getElementById("other").checked;
    } else {
        // if not checked ...
    }
};

我完全是在错误的树上吠吗?任何见习帮手

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2018-04-27 11:51:51

你可以让它像:

代码语言:javascript
运行
复制
<form id="test" action="#" method="post">
    <div>
        <input type="checkbox" name="check" id="check"/>
    </div>

        <div>
        <input type="checkbox" name="check2" id="check2"/>
    </div>
</form>

document.getElementById('check').onclick = function() {

代码语言:javascript
运行
复制
 if (!this.checked) {
    document.getElementById("check2").checked = false;
} else {

    // other logic ...
}};

在jsfiddle:https://jsfiddle.net/3dtq0w8x/网上测试

票数 0
EN

Stack Overflow用户

发布于 2018-04-27 11:53:18

要同时同步两者的检查,只需对第二个属性的this.checked使用第一个单击的checked属性,如下所示:

代码语言:javascript
运行
复制
document.getElementById("other").checked = this.checked;

注意:将以一种方式工作,这意味着当您单击附加单击事件的第一个checkbox时,检查将被同步。

代码语言:javascript
运行
复制
document.getElementById('email').onclick = function() {
    document.getElementById("other").checked = this.checked;
};
代码语言:javascript
运行
复制
<input id="email" type="checkbox" /> CHECKBOX 1
<br>
<input id="other" type="checkbox" /> CHECKBOX 2

票数 3
EN

Stack Overflow用户

发布于 2018-04-27 11:51:04

在测试代码中,您没有将选中的"other“属性设置为任何值。你只是读取它的价值,然后倒置它(用!)。

你可以试试:

代码语言:javascript
运行
复制
document.getElementById("other").checked = false;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50061747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档