var FormsValidation = { };
FormsValidation.getData = function () {
var a = $("[data-forms-validate]");
if(a) for(i=0; i<a.length; i++) {this.setRules($(a[i]).data({}).data());}
else return false;
}
FormsValidation.setRules = function (o) {
console.log(o);
var a = o.formsValidate.split(",");
for(i=0; i<a.length; i++) {console.log(a[i]);}
}
FormsValidation.getData();
У меня приходит два объекта, дергаю оттуда свойство, разбиваю строку, получаю массив, затем мне надо вызвать функцию, но дело в том что объекта два или допустим три, и когда я пихаю в for отрабатывает только один
Суть, подробно покажу метод setRules, так как тут и застрял
FormsValidation.setRules = function (o) {
console.log(o);
//var a = o.formsValidate.split(",");
//for(i=0; i<a.length; i++) {console.log(a[i]);}
}
RESULT
Object {formsValidate: "required,minLength|2,maxLength|15"}
Object {formsValidate: "required,minLength|6"}
После разбора строки
FormsValidation.setRules = function (o) {
var a = o.formsValidate.split(",");
console.log(a);
//for(i=0; i<a.length; i++) {console.log(a[i]);}
}
RESULT
["required", "minLength|2", "maxLength|15"]
Uncaught Error: Syntax error, unrecognized expression: minLength|2
Само собой без присваивания все отлично
FormsValidation.setRules = function (o) {
console.log(o.formsValidate.split(","));
//for(i=0; i<a.length; i++) {console.log(a[i]);}
}
RESULT
["required", "minLength|2", "maxLength|15"]
["required", "minLength|6"]
Ну и сама проблема
FormsValidation.setRules = function (o) {
var a = o.formsValidate.split(",");
for(i=0; i<a.length; i++) {console.log(a[i]);}
}
RESULT
required
minLength|2
maxLength|15