Javascript jQuery表单验证--正确提交而不是清除错误
在jQuery中进行表单验证。我的所有验证似乎都正常工作 如果提交的表单中没有数据,则会显示所有正确的错误 如果修复其中一个字段,则该字段的错误消息不会清除 我认为这可能是我的逻辑有问题,但不确定是否有一种简单的方法可以尝试再次检查验证 我在jQuery中提交的代码在这里。前四个验证函数是检查错误和显示错误(如果有)。如果有任何错误,将阻止表单提交。如果没有错误,将显示警报并允许提交。我知道问题在于,在第一个if语句发现错误之后,无法查看错误是否已修复并清除该错误。所以,我很困惑,到底该怎么做——也许在一个循环中会更好吗Javascript jQuery表单验证--正确提交而不是清除错误,javascript,jquery,forms,validation,Javascript,Jquery,Forms,Validation,在jQuery中进行表单验证。我的所有验证似乎都正常工作 如果提交的表单中没有数据,则会显示所有正确的错误 如果修复其中一个字段,则该字段的错误消息不会清除 我认为这可能是我的逻辑有问题,但不确定是否有一种简单的方法可以尝试再次检查验证 我在jQuery中提交的代码在这里。前四个验证函数是检查错误和显示错误(如果有)。如果有任何错误,将阻止表单提交。如果没有错误,将显示警报并允许提交。我知道问题在于,在第一个if语句发现错误之后,无法查看错误是否已修复并清除该错误。所以,我很困惑,到底该怎么做
// On Form Submission Validate Form
$("#contact_submit button").click(function(event){
error_name = validateName();
error_email = validateEmail();
error_activity = validateActivities();
isCreditIssue = validateCredit();
event.preventDefault();
var valid = true;
if ((error_name) || (error_email) || (error_activity) || (isCreditIssue)){
console.log("errors");
valid = false;
} else {
alert('GREAT! form completed');
valid = true;
}
if (valid) {
return;
}
当表单值在许多地方变为有效时,您遗漏了
hide
语句。仅举一个例子(在validateZip
中):
您应该将其替换为以下内容:
if ((!errorZip)||(zip!= 5)){
$(".error_zip").show();
errorZip = true;
console.log('zip issue');
} else {
$(".error_zip").hide();
errorZip = false;
}
if ((!errorZip)||(zip!= 5)){
$(".error_zip").show();
errorZip = true;
console.log('zip issue');
} else {
$(".error_zip").hide();
errorZip = false;
}