这是我尝试使用的示例HTML表单:
<form>
<input type="radio" name="numbers" id="one" value="one">One<br>
<input type="radio" name="numbers" id="two" value="two">Two<br>
<input type="button" value="Go!" onClick="myFunction()">
<div id="output"></div>
</form>
这是我尝试使用的示例JavaScript函数:
function myFunction() {
if (document.getElementById("one").checked = true) {
document.getElementById("output").innerHTML = "One Selected";
} else if (document.getElementById("two").checked = true) {
document.getElementById("output").innerHTML = "Two Selected";
}
}
所以当单选按钮&#34;一个&#34>单击,它应显示&#34; One Selected&#34;关于&#34;输出&#34;当单选按钮&#34;两个&#34;单击,它应显示&#34;两个选定&#34;。但是,它总是自动选择单选按钮&#34;一个&#34;并显示&#34; One Selected&#34;关于&#34;输出&#34;即使我选择单选按钮&#34;两个&#34;为什么会发生这种情况?
另外,有没有办法让它不自动选择单选按钮&#34;一个&#34;当用户没有选择任何一个时,它可以在没有选择任何一个时显示消息?
答案 0 :(得分:2)
if
条件错误 - 您正在分配而不是检查值。使用==
或===
。在这里你正在检查单选按钮状态 - 它已经返回true或false。所以你不需要一个相同的检查。
function myFunction() {
if (document.getElementById("one").checked) {
document.getElementById("output").innerHTML = "One Selected";
} else if (document.getElementById("two").checked) {
document.getElementById("output").innerHTML = "Two Selected";
}
}
<form>
<input type="radio" name="numbers" id="one" value="one">One<br>
<input type="radio" name="numbers" id="two" value="two">Two<br>
<input type="button" value="Go!" onClick="myFunction()">
<div id="output"></div>
</form>