JavaScript:开关和检查单选按钮
问题描述:
我编写了此代码以在单选按钮之间切换并显示我的自定义警报。JavaScript:开关和检查单选按钮
<script>
function test() {
if (radio[0].checked = true) {
alert("hello1");
}
if (radio[1].checked = true) {
alert("hello2");
}
}
</script>
<input type="radio" onclick="test()" value="0">
<input type="radio" onclick="test()" value="1">
当检查任何单选按钮时,它必须显示特定的警报。 有什么不对?
答
两件事情: 1)必须在单选按钮使用“name”属性。否则,您将无法检查单选按钮。 2)你不能使用无线电[0]指向单选按钮。您可以为其分配一个ID并使用getElementById
方法在Javascript中使用它。另一个简单的方法是将对象传递给函数。请参考下面的示例代码:
<script>
function test(radioObj) {
if(radioObj.value == "0")
alert("Hello1");
else if (radioObj.value == "1")
alert("Hello2");
}
</script>
<input type="radio" name="test" onclick="test(this)" value="0">
<input type="radio" name="test" onclick="test(this)" value="1">
答
radio[0]
和radio[1]
在您的html中定义,但不在您的javascript中。您可以尝试使用JQuery或许多JavaScript选择器库中的一个。或者使用getElementById
答
你应该命名你的单选按钮,并从javascript调用它们。你需要注意一下这里
<script>
function test() {
if (document.getElementById('radio1').checked == true) {
alert("hello1");
}
if (document.getElementById('radio2').checked == true) {
alert("hello2");
}
}
</script>
<input type="radio" id="radio1" onclick="test()" value="0">
<input type="radio" id="radio2" onclick="test()" value="1">
你有一个小bug在那里......“如果”语句需要==为平等检查,而不是单个'=' – Matt