Prev | Current Page 767 | Next

L. McColl-Sylvester and F. Ponticelli

"Professional haXe and Neko"

name))
{
trace(???Rule not registered: ???+r.name);
continue;
}
var v = rules.get(r.name);
var rule : ValidationRule = Type.createInstance(v.rclass, [this]);
for(key in Reflect.fields(v.params))
rule.params.set(key, Reflect.field(v.params, key));
for(key in r.params.keys())
rule.params.set(key, r.params.get(key));
crules.push(rule);
}
untyped inputs[i].onblur = function(e)
{
self.validateControl(inputs[i].getAttribute(???name???));
};
}
fields.set(inputs[i].getAttribute(???name???),
{ el : cast inputs[i], rules : crules });
}
}
public static function applyToDocument()
{
for(i in 0...js.Lib.document.forms.length)
new FormValidator(js.Lib.document.forms[i]);
}
(continued)
412
Part II: Server Side, JavaScript, and Flash: Oh My!
public static function registerRule(name : String,
rule : Class < ValidationRule > , ?params : Dynamic)
{
if(params == null)
params = Reflect.empty();
rules.set(name, { rclass : rule, params : params });
}
private function validateAll()
{
var valid = true;
for(name in fields.


Pages:
755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779