@@ -283,17 +283,18 @@ Nette.showFormErrors = function(form, errors) {
283283 }
284284 }
285285
286- for ( var i = 0 ; i < errors . length ; i ++ ) {
286+ for ( i = 0 ; i < errors . length ; i ++ ) {
287287 if ( i === 0 && errors [ i ] . element . focus ) {
288288 errors [ i ] . element . focus ( ) ;
289289 }
290290
291291 if ( errors [ i ] . message ) {
292+ Nette . addError ( errors [ i ] . element , errors [ i ] . message ) ;
292293 var box = document . createElement ( 'span' ) ;
293294 box . setAttribute ( 'class' , Nette . formErrorClass ) ;
294- box . textContent = errors [ i ] . message ;
295- errors [ i ] . element . parentNode . insertBefore ( box , errors [ i ] . element . nextSibling ) ;
296- Nette . addEvent ( errors [ i ] . element , 'keypress' , function ( ) {
295+ box . textContent = message ;
296+ elem . parentNode . insertBefore ( box , elem . nextSibling ) ;
297+ Nette . addEvent ( elem , 'keypress' , function ( ) {
297298 if ( this . nextSibling && this . nextSibling . getAttribute ( 'class' ) === Nette . formErrorClass ) {
298299 this . parentNode . removeChild ( this . nextSibling ) ;
299300 }
@@ -651,6 +652,15 @@ Nette.initForm = function(form) {
651652 }
652653 } ) ;
653654
655+ Nette . addEvent ( form , 'blur' , function ( ) {
656+ e = e || event ;
657+ var target = e . target || e . srcElement ;
658+ alert ( target ) ;
659+ if ( ( target . nodeName . toLowerCase ( ) in { input : 1 , select : 1 , textarea : 1 } ) && ! target . disabled && ! target . readonly ) {
660+ Nette . validateControl ( target ) ;
661+ }
662+ } ) ;
663+
654664 Nette . toggleForm ( form ) ;
655665} ;
656666
0 commit comments