我正在尝试验证是否选中了一组单选按钮以验证表单。
function formValidator() {
var triedIt = document.getElementsByName('tried');
if(radioChecked(triedIt, "Please select") {
return true;
}
return false;
}
function radioChecked(elem, helperMsg) {
if(document.myform.tried.checked == 1) {
return true;
}
else {
alert(helperMsg);
elem.focus();
return false;
}
}这将返回警报,但由于某种原因,表单仍会被处理。我在想我做错了什么..。任何帮助都将不胜感激。
如果你想知道为什么我不直接使用jquery等。不幸的是,这不是一个选择。谢谢!
发布于 2012-09-12 02:16:11
我认为这是因为document.getElementsByName('tried')返回了元素数组。因此,当您调用elem.focus()时,它将抛出错误(因为数组没有方法焦点),并且js停止执行。
发布于 2012-09-12 01:35:13
function formValidator(){
var triedIt = document.getElementsByName('tried');
if(radioChecked(triedIt, "Please select")){
return true;
}
return false;
}
function radioChecked(elem, helperMsg){
if(document.myform.tried.checked == 1) {
return true;
}else{
alert(helperMsg);
elem.focus();
return false;
}
}试试这个,我想你跳过了一个右括号) in if(radioChecked(triedIt, "Please select"))这就是为什么会这样
https://stackoverflow.com/questions/12374938
复制相似问题