Итак, я хочу построить класс / объект проверки формы в javascript. То, как я это вижу, будет примерно таким:
var form=new Validation();
form.addField("name","Your name","required");
form.addField("email","Email Address","is_email");
.........
form.validate();
Я думал, что класс validation
будет определен примерно так?
validation
{
var fields=new Array();
var labels=new Array();
var rules=new Array();
var count=0;
function addField(field,label,rule)
{
this.fields[count]=field;
this.labels[count]=label;
this.rules[count]=rule;
this.count=count+1;
}
function validate()
{
var valid;
for (x=0; x< count; x++)
{
valid=false;
switch (this.rules[x])
{
case 'required':
valid=this.validate_required(this.fields[x]);
break;
case 'email':
valid=this.validate_email(this.fields[x]);
break;
}
if (! valid)
this.addError(this.fields[x],this.rules[x],this.labels[x]);
}
if (this.hasErrors())
return false;
else
return true;
}
..........
}
Я знаю, что это, вероятно, невозможно, как сейчас. У меня вопрос: что я могу сделать, чтобы первый блок кода (который создает новый экземпляр Validation
и добавляет к нему правила) работал?
Заранее спасибо.