首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何重置/取消单选按钮点击事件?

如何重置/取消单选按钮点击事件?
EN

Stack Overflow用户
提问于 2012-03-27 08:05:23
回答 5查看 34.4K关注 0票数 3

我有两个单选按钮和两个组。

结构是这样的

  1. 主无线电1
  2. 主无线电2

在主广播2下,还有两个子单选按钮。

  1. 主无线电1
  2. 主无线电2
    • 次级无线电1
    • 次级无线电2

我所做的是,在默认的阶段,它将只显示主电台1和主收音机2按钮。当选择主广播2时,将出现主广播2的两个子单选按钮。

当选择回主广播1时,它将隐藏主广播2的列表。

我想要实现的是,

当单击主广播1时,我为Sub Radio 1或Sub Radio 2所做的选择也希望被取消/重置。

我试过这个javascript,但没有成功。

代码语言:javascript
复制
document.getElementById("subradiobuttons").reset(); 

请帮我解决这个问题。谢谢。

关于这一点,

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-03-27 08:32:51

我认为,对于这样一个简单的任务,最好的方法并不需要像jQuery这样的完整的jQuery库。

代码语言:javascript
复制
document.getElementById("main2").addEventListener("click", function()
{
    document.getElementById("subCheckButtons").style.opacity = 1;
}, false);
document.getElementById("main1").addEventListener("click", function()
{
    document.getElementById("subCheckButtons").style.opacity = 0;
    document.getElementById("sub1").checked = false;
    document.getElementById("sub2").checked = false;
}, false);
代码语言:javascript
复制
<input type="radio" id="main1" name="main" />
<input type="radio" id="main2" name="main" />
<div id="subCheckButtons" style="opacity:0;">
    <input type="radio" id="sub1" name="sub" class="subCheck" />
    <input type="radio" id="sub2" name="sub" class="subCheck" />
</div>

或者去看小提琴

票数 5
EN

Stack Overflow用户

发布于 2020-12-05 16:30:09

这是另一种方法,如果有人点击“主收音机1”,将所有输入重置到他们的默认位置。

代码语言:javascript
复制
//Clear all inputs.
function clearInputs(form) {
    "use strict";

    //Gather all inputs within selected form.
    const inputs = form.querySelectorAll("input");

    //Clear the inputs.
    inputs.forEach(function (input) {
        if (input.hasAttribute("checked") === true) {
            input.checked = true;
        } else {
            input.checked = false;
        }
    });
}

//Monitor "Main Radio 1" for clicks.
function monitorMainRadio1() {
    "use strict";

    const form = document.getElementById("form");
    const mainRadio1 = document.getElementById("main-radio1");

    mainRadio1.addEventListener("click", function () {
        clearInputs(form);
    });
}

//Invoke the monitorMainRadio1 function.
monitorMainRadio1();
票数 1
EN

Stack Overflow用户

发布于 2012-03-27 08:11:15

没测试过但是..。

<input type="radio" onclick="document.getElementById("subradiobuttons").Checked = false;" />

或者您可以调用Javascript函数来做更多的工作/逻辑。

这一页有你需要的东西

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

https://stackoverflow.com/questions/9885551

复制
相关文章

相似问题

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