首页 > 解决方案 > How to access the value of a radio button

问题描述

I am trying to access the value of a radio button using HTML and Javascript to make a simple quiz but it does not seem to be working. Here is my code:

function check() {
var a = document.getElementById("test").value
if (a === "one") {
alert("Correct!")
} else {
alert("Wrong!")
}
}
<h1><center>Simple Quiz</center></h1>
<br>
1) What is 1 + 1?
<br>
<form>
  <input type="radio" name="one" id="test" value="one">1<br>
  <input type="radio" name="one" id="test" value="two">2<br>
  <input type="radio" name="one" id="test" value="three">3<br>
  <button onclick="check()">Check</button>
</form>

It always says "Correct!" even when it is not. Does anyone know how to fix this?

标签: javascripthtml

解决方案


您缺少的一些要点:

  • 一个 id在整个页面上必须是唯一的
  • 要检查单选按钮是否被选中,请使用其checked属性

function check() {
  var two = document.getElementById("two");
  if (two.checked) {
    alert("Correct!")
  } else {
    alert("Wrong!")
  }
}
<h1>
  <center>Simple Quiz</center>
</h1>
<br> 1) What is 1 + 1?
<br>
<form>
  <input type="radio" name="one" id="one" value="one">1<br>
  <input type="radio" name="one" id="two" value="two">2<br>
  <input type="radio" name="one" id="three" value="three">3<br>
  <button onclick="check()">Check</button>
</form>


推荐阅读