【发布时间】:2014-04-13 11:48:15
【问题描述】:
我对 Javascript 很陌生,我有这个在按钮单击时调用的 Javascript 函数。我想要做的是,如果所有单选按钮都没有被选中,无论它们是是或否,并且如果它们都被选中,则显示一个警报,调用下面的另一个名为 addPoints() 的函数。
function validateForm(){
var inputs = document.querySelectorAll('input[type="radio"]');
var formValid = false;
for(var i=0;i<inputs.length;i++){
if(inputs[i].checked){
formValid = true;
}
}
if(!formValid ){
alert("Please answer all questions!");
}
else{
addPoints();
}
}
以下是我的单选按钮的显示方式
<form name="form1" id="form1">
<input id="rdo1" type="radio" name="q1" value="10">Yes<br>
<input id="rdo2" type="radio" name="q1" value="0">No
</form>
<form name="form2" id="form2">
<input id="rdo3" type="radio" name="q2" value="10">Yes<br>
<input id="rdo4" type="radio" name="q2" value="0">No
</form>
<form name="form3" id="form3">
<input id="rdo5" type="radio" name="q3" value="10">Yes<br>
<input id="rdo6" type="radio" name="q3" value="0">No
</form>
<button type="submit" onclick="validateForm()">Score?</button>
如果我在页面加载时没有选择任何单选按钮,并且我使用该按钮调用函数 validateForm(),则消息是正确的,并指出“请回答所有问题”。如果我从任何组中选择是或否,它会调用 addPoints 函数。我只希望它在从所有无线电组中选择所有是或否时调用该函数。
【问题讨论】:
标签: javascript html validation dom radio-button