如何检查单选按钮的值
我试过的其他东西都没有奏效。我只想要一个条件来检查是否选择了其中一个收音机,并且总是会选择一个收音机。我需要知道选择哪一个。如何检查单选按钮的值
<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
要么总是产生真或假。任何方法来解决这个问题?
您需要遍历该组按钮并检查.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>
var player= document.forms.MyForm.starting.value;
可以是溶液..
ES6溶液。使用Array#forEach
将change
事件绑定到每个单选按钮并记录实际选定按钮的值。
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
这将获得每个被检查的输入,包括所有单选按钮集和复选框。最好以* name *选择符开始,可以是'getElementsByName('starting')'或'querySelectorAll('[name =“starting”]')' – RobG
@RobG好主意。 –
可以使用选择器:'document.querySelector( '[名称= “开始”]:检查')'。 – RobG