使一个单选按钮选择另一个镜像的单选按钮

时间:2020-09-22 16:01:31

标签: javascript html css

我想这应该很简单...无论如何,我有两组镜像的单选按钮,分别是A和B。

在设置a中,有按钮1、2和3

在b集中,还有按钮1、2和3

我想要的行为是,当我单击集合a中的按钮1时,它会自动检查集合b中的按钮1。

对于2A和2B以及3A和3B相同。

任何人都可以解释如何执行此操作吗?这似乎是一个非常简单的功能,但是显然无法通过Google找到答案,而且似乎之前也没有人在这里问过……:/

我想使用HTML / Javascript。 没有JQUERY。

谢谢!

1 个答案:

答案 0 :(得分:0)

在设置if(o[i].checked!=true)之前检查o[i].checked=true以避免无限反馈。

function radioChanged(name, value) {
  var n=name=="a"?"b":"a";
  var o=document.getElementsByName(n);
  for(var i=0; i<o.length; i++)
    if(o[i].value==value)
      if(o[i].checked!=true)
        o[i].checked=true;
};
<input type="radio" name="a" value="1" id="A1"
  onchange="radioChanged(this.name, this.value)">
<label for="A1">A1</label></input>
<input type="radio" name="a" value="2" id="A2"
  onchange="radioChanged(this.name, this.value)">
<label for="A2">A2</label></input>
<input type="radio" name="a" value="3" id="A3"
  onchange="radioChanged(this.name, this.value)">
<label for="A3">A3</label></input>
<hr>
<input type="radio" name="b" value="1" id="B1"
  onchange="radioChanged(this.name, this.value)">
<label for="B1">B1</label></input>
<input type="radio" name="b" value="2" id="B2"
  onchange="radioChanged(this.name, this.value)">
<label for="B2">B2</label></input>
<input type="radio" name="b" value="3" id="B3"
  onchange="radioChanged(this.name, this.value)">
<label for="B3">B3</label></input>