用什么代替return boolean

时间:2017-05-14 10:56:20

标签: javascript jquery forms

我已经通过jquery对我的表单应用了验证,并且在该表单中我有四个复选框,用户必须选中一个以提交表单。

这是代码:

for (var i = 0; i < c.length; i++) {   
   if (c[i].type == 'checkbox' && c[i].checked == true) {     
       return true;
   } else {
       error += alert ("You must select atleast one previous benefit provided");
       return false
   } 
}

问题是这使用返回键,如果我删除返回键,它将提醒4次(相同数量的复选框),如果我让它在那里那么检查字段和给出错误的if语句不起作用< / p>

if(error != "") {
   $("#error").html("<strong>Some fields are invalid!</strong>") || error;
   return false;
} else {
   return true;
}

如果我在复选框验证中删除了返回,那么每个工作都可以正常工作,但它会发出四次警报,如果不删除它,那么不提出错误就会提交表单。

1 个答案:

答案 0 :(得分:2)

error不会返回任何内容,因此您的var hasChecked = $('#myForm :checkbox:checked').length; if(!hasChecked){ return false error = true; } 逻辑没有意义。

创建一个已选中复选框的集合,并确保它具有长度。

counter