我创建了一个自定义 jquery 验证,但我的验证总是失败(总是返回 true),我花了几个小时但无法弄清楚我的代码出了什么问题:
var isvalid = [];
var counterrors = isvalid.length;
function salutationvalidation(){
var salutation = $("#salutation option").attr("selected");
var salutation_error = $("#salutation").parent(".form-input").siblings(".form-info").children(".1stperror");
if(salutation!=undefined){
$(salutation_error).css("display","table-cell");
isvalid.push(salutation_error);
}else{
$(salutation_error).css("display","none");
isvalid.pop(salutation_error);
}
}
function namevalidation(){
var checkname = $("#first-name").val();
var namevalid = new RegExp("(^[a-zA-Z'-]+$)");
var name_error = $("#first-name").parent(".form-input").siblings(".form-info").children(".1stperror");
if(checkname.match(namevalid)){
$(name_error).css("display","table-cell");
isvalid.push(name_error);
}else{
$(name_error).css("display","none");
isvalid.pop(name_error);
}
}
$("#form-v2").submit(function(){
salutationvalidation();
namevalidation();
if(counterrors == 0){
return true;
}else{
return false;
}
});
解决上述代码的任何帮助将不胜感激,因为我还必须满足其他 4 个输入字段。当我提醒计数错误时,我得到 4,有时是 5,6。似乎值没有清除