如何检查单选按钮的值

时间:2017-03-09 22:17:47

标签: javascript radio-button

我尝试的其他所有事情都没有奏效。我只想要一个条件来检查是否选择了一个无线电,并且总是选择一个无线电。我需要知道选择了哪一个。

<label for="starting">Starting Player:</label> <input type="radio" name="starting" value="1" checked>P1 <input type="radio" name="starting" value="2" id="startingPlayer">P2 document.getElementById("startingPlayer").checked==true

要么总是产生真假。有办法解决这个问题吗?

3 个答案:

答案 0 :(得分:1)

您需要遍历这组按钮并检查.checked属性。

您可以随时执行此操作。在这里,我点击一下按钮就可以了。

var buttons = document.querySelectorAll("input[type=radio]");
var btnCheck = document.querySelector("button");
btnCheck.addEventListener("click", checkSelected);

function checkSelected(){
  for(var i = 0; i < buttons.length; ++i){
    if(buttons[i].checked){
      console.clear();
      console.log("The selected radio button has a value of: " + buttons[i].value);
    }
  }
}
<label for="starting">Starting Player:</label>
<input type="radio" name="starting" value="1" checked>P1
<input type="radio" name="starting" value="2" id="startingPlayer">P2 
<button>Get Selected Button Value</button>

答案 1 :(得分:0)

ES6 解决方案。使用Array#forEachchange事件绑定到每个单选按钮,并记录实际选定按钮的值。

var elems = document.getElementsByName('starting');
Array.from(elems).forEach(v => v.addEventListener('change', function() {
  Array.from(elems).forEach(v => v.checked ? console.log(v.getAttribute('value')) : null)
}))
<label for="starting">Starting Player:</label>
<input type="radio" name="starting" value="1" checked>P1
<input type="radio" name="starting" value="2" id="startingPlayer">P2

答案 2 :(得分:-1)

var player= document.forms.MyForm.starting.value;可以是解决方案..