首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >html在一个组中只选择一个复选框

html在一个组中只选择一个复选框
EN

Stack Overflow用户
提问于 2012-03-15 03:52:38
回答 14查看 677.2K关注 0票数 150

那么,我如何才能只允许用户选择一个复选框呢?

我知道单选按钮是“理想的”,但对我来说……它不是。

我有一个字段,用户需要选择两个选项中的一个或,但不能两个都选择。问题是,我需要我的用户也能够取消选择他们的选项,这就是单选按钮失败的地方,因为一旦选择了组,就必须选择一个选项。

我会通过php验证信息,但我仍然想限制用户只有一个答案,如果他们想给的话。

EN

回答 14

Stack Overflow用户

发布于 2018-01-01 19:00:48

已经有一些基于纯JS的答案,但没有一个像我希望的那样简洁。

这是我的解决方案,基于使用name标签(如单选按钮)和几行javascript。

代码语言:javascript
复制
function onlyOne(checkbox) {
    var checkboxes = document.getElementsByName('check')
    checkboxes.forEach((item) => {
        if (item !== checkbox) item.checked = false
    })
}
代码语言:javascript
复制
<input type="checkbox" name="check" onclick="onlyOne(this)">
<input type="checkbox" name="check" onclick="onlyOne(this)">
<input type="checkbox" name="check" onclick="onlyOne(this)">
<input type="checkbox" name="check" onclick="onlyOne(this)">

票数 32
EN

Stack Overflow用户

发布于 2012-03-15 03:55:26

单选按钮是理想的选择。你只需要第三个"neither“选项,默认情况下是选中的。

票数 28
EN

Stack Overflow用户

发布于 2012-03-15 04:01:13

代码语言:javascript
复制
$("#myform input:checkbox").change(function() {
    $("#myform input:checkbox").attr("checked", false);
    $(this).attr("checked", true);
});

这应该适用于表单中任意数量的复选框。如果您有其他不属于组的成员,请将选择器设置为适用的输入。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9709209

复制
相关文章

相似问题

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