Javascript 如何通过按下单选按钮禁用表单输入?

Javascript 如何通过按下单选按钮禁用表单输入?,javascript,bootstrap-4,Javascript,Bootstrap 4,我有两个单选按钮。如果选中第一个单选按钮“主地址”,则应禁用下面的表单。如果我随后选中第二个单选按钮“其他地址”,则应激活该表单 如果没有选中任何单选按钮(在页面上重定向时,两个单选按钮都未选中),我还希望表单在主状态下被禁用 如何使用JavaScript解决这个问题 主地址 其他地址 地址 请输入您的其他地址。 卡片上的名字是必需的 城市 要求的截止日期 邮政编码 需要安全代码 继续结帐 类似的方法应该可以: radioButton.addEventListener('change',

我有两个单选按钮。如果选中第一个单选按钮“主地址”,则应禁用下面的表单。如果我随后选中第二个单选按钮“其他地址”,则应激活该表单

如果没有选中任何单选按钮(在页面上重定向时,两个单选按钮都未选中),我还希望表单在主状态下被禁用

如何使用JavaScript解决这个问题


主地址
其他地址
地址
请输入您的其他地址。
卡片上的名字是必需的
城市
要求的截止日期
邮政编码
需要安全代码

继续结帐
类似的方法应该可以:

radioButton.addEventListener('change', () => {
    radioButton.value === 'on' ? input.disabled = true : input.disabled = false;
})

在你的单选按钮上添加一个eventlistener,如果它被点击到地址DIV,则添加一个新的类“hide”。为隐藏添加CSS,使其不可见。
对于第二个单选按钮,只为remove而不是add类执行相同的操作。这样您就可以再次显示它了。

顺便说一句,不要使用带有空格的id,它将无法正常工作。我换了收音机

let mainAddress=document.getElementById(“主地址”);
mainAddress.addEventListener('click',function(){
document.getElementById(“地址”).classList.add(“隐藏”);
});
让otherAddress=document.getElementById(“其他地址”);
OtherAddress.addEventListener('click',函数(){
document.getElementById(“地址”).classList.remove(“隐藏”);
});
.hide{可见性:隐藏;}

主地址
其他地址
地址
请输入您的其他地址。
卡片上的名字是必需的
城市
要求的截止日期
邮政编码
需要安全代码

继续结帐
您也可以在默认情况下禁用其他地址输入,并在按下“其他地址”单选按钮后添加一个事件侦听器来更改它。如果你不想隐藏它,除非你需要它。

你试过什么?我们不只是根据需求编写代码解决方案。我们希望您在发布之前进行研究并尝试解决方案。@ScottMarcus我曾尝试将事件侦听器与href和location一起使用,但没有成功。我还查找了其他类似的解决方案,但它们对我也不起作用。请编辑您的问题并显示您尝试过的内容。如何使用它,我有两个单选按钮的id。查看我的解决方案,您可以看到如何在单选按钮上设置eventlistener。
radioButton.addEventListener('change', () => {
    radioButton.value === 'on' ? input.disabled = true : input.disabled = false;
})