单选按钮签入香草javascript不工作
我的单选按钮检查不起作用。有人能帮我吗?我 要检查单选按钮是否已选中。如果未选中,则我希望此程序发出警报。但在这个程序中,每当单选按钮未被选中时,我就不会收到警报单选按钮签入香草javascript不工作,javascript,html,Javascript,Html,我的单选按钮检查不起作用。有人能帮我吗?我 要检查单选按钮是否已选中。如果未选中,则我希望此程序发出警报。但在这个程序中,每当单选按钮未被选中时,我就不会收到警报 <div> <label for="gender">Gender: </label> <input type="radio" name="myRadio"> Male
<div>
<label for="gender">Gender: </label>
<input type="radio" name="myRadio"> Male
<input type="radio" name="myRadio"> Female
<input type="radio" name="myRadio"> Other
</div>
性别:
男性
女性
其他
单选按钮检查功能如下所示:
function radioCheck(){
var radio = document.forms["myForm"]["myRadio"].value;
for (var i=0; i<radio.length; i++) {
if (radio[i].checked){
break;
}else
{
alert("No radio button is checked");
}
}
}
功能无线电检查(){
var radio=document.forms[“myForm”][“myRadio”].value;
对于(var i=0;i好的,这是工作代码:
function radioCheck(){
const radioList = document.getElementsByName("myRadio")
let notChecked = false;
for(let i = 0; i < radioList.length; i ++){
if(radioList[i].checked){
return;
} else {
notChecked = true;
}
}
if(notChecked){
alert("No radio button is checked")
}
}
radioCheck()
功能无线电检查(){
const radioList=document.getElementsByName(“myRadio”)
设缺口=假;
for(设i=0;i
解释:
- 首先,您必须使用
document.getElementsByName
获取所有输入,因为在本例中,它们唯一相同的是name
属性,即name=“myRadio”
- 第二件事,我添加了变量
notChecked
,该变量在初始值为false,因此当它将遍历所有输入并看到其中一个未被选中时,它将显示警报
- 然后,您只需对遍历所有元素的循环执行常规操作,并检查它们是否被选中
- 如果选中其中一个,它将停止循环并不返回任何内容,否则它将设置
notcked=true
- 循环后,我只需检查
notChecked
值是否为真,如果为真,则显示警报
- 最后也是最重要的一点-您必须至少运行一次此函数才能执行它,因此您只需在最后添加
radioCheck()
- 我还将此部分添加到html
run-reach
因此,单击按钮“再次运行”
后,您可以再次使用它(仅用于测试)
下面是一个工作示例:
希望我的回答能帮助你:)如果您有任何问题,请询问您能解释一下您想要达到什么目的吗?如果没有选中,您想显示警报,但是在选中某项时不执行任何操作吗?@Sowam我想检查单选按钮是否选中。如果没有选中,则我希望此程序发出警报。但是在本程序中,每当按钮未选中时,都会显示警报cked我没有收到警报。你想在检查或未检查时发出警报?或者两者都要发出警报?我不明白你的答案…你为什么使用“中断”有吗?为什么它之前什么都没有?所以当单选按钮没有被选中并且我使用了break时,我想发出一个警报,因为如果找到了选中的按钮,那么程序应该从if块终止。我添加了一个答案:)并更新了它