我有相当大的形式,并与PHP验证(ofc)我想使用jQuery。我是jQuery的新手,但环顾四周后,我的代码运行良好。它正在检查文本框的长度,如果长度不足,将不允许提交。如果条目较低,则文本框的颜色将更改为红色。jQuery使用循环进行验证?
我遇到的问题是因为表单太大,需要很长时间,并且需要很多代码来验证每个盒子。因此我想知道是否有一种方法可以循环使用所有变量,而不是每次都创建一个函数。
以下是我有:
var form = $("#frmReferral");
var companyname = $("#frm_companyName");
var companynameInfo = $("#companyNameInfo");
var hrmanagername = $("#frm_hrManager");
var hrmanagernameInfo = $("#hrManagerInfo");
form.submit(function(){
if(validateCompanyName() & validateHrmanagerName())
return true
else
return false;
});
确认功能
function validateCompanyName(){
// NOT valid
if(companyname.val().length < 4){
companyname.removeClass("complete");
companyname.addClass("error");
companynameInfo.text("Too Short. Please Enter Full Company Name.");
companynameInfo.removeClass("complete");
companynameInfo.addClass("error");
return false;
}
//valid
else{
companyname.removeClass("error");
companyname.addClass("complete");
companynameInfo.text("Valid");
companynameInfo.removeClass("error");
companynameInfo.addClass("complete");
return true;
}
}
function validateHrmanagerName(){
// NOT Valid
if(hrmanagername.val().length < 4){
hrmanagername.removeClass("complete");
hrmanagername.addClass("error");
hrmanagernameInfo.text("Too Short. Please Enter Full Name.");
hrmanagernameInfo.removeClass("complete");
hrmanagernameInfo.addClass("error");
return false;
}
//valid
else{
hrmanagername.removeClass("error");
hrmanagername.addClass("complete");
hrmanagernameInfo.text("Valid");
hrmanagernameInfo.removeClass("error");
hrmanagernameInfo.addClass("complete");
return true;
}
}
正如你可以看到这将是越来越庞大的50岁以上的输入框。我想也许一个循环会工作,但不知道该怎么办。可能包含所有变量的数组?任何帮助都会很棒。
使用像[jQuery的验证]验证框架(http://jqueryvalidation.org/ ) –
是的,同意@ArunPJohny。使用插件。它的易于使用和获得帮助 –