@@ -74,18 +74,6 @@ It also exposes the class `InputValidator` for manual instantiating.
7474 email : / ^ [a-zA-Z0-9 . !#$%&'*+\/ =?^_`{|}~-] + @[a-zA-Z0-9 ] (?:[a-zA-Z0-9 -] {0,61} [a-zA-Z0-9 ] )? (?:\. [a-zA-Z0-9 ] (?:[a-zA-Z0-9 -] {0,61} [a-zA-Z0-9 ] )? )* $ /
7575
7676 rules :
77- number : (validator , $element , value ) ->
78- return true if $element .attr (' type' ) != ' number' || ! (' ' + value).length
79- validator .config .pattern .number .test (value)
80-
81- tel : (validator , $element , value ) ->
82- return true if $element .attr (' type' ) != ' tel' || ! (' ' + value).length
83- validator .config .pattern .tel .test (value)
84-
85- email : (validator , $element , value ) ->
86- return true if $element .attr (' type' ) != ' email' || ! (' ' + value).length
87- validator .config .pattern .email .test (value)
88-
8977 minlength : (validator , $element , value ) ->
9078 return true unless $element .attr (' minlength' )
9179 (' ' + value).length >= parseInt ($element .attr (' minlength' ), 10 )
@@ -100,6 +88,18 @@ It also exposes the class `InputValidator` for manual instantiating.
10088 return !! value .length if typeof (value) in [' string' , ' array' ]
10189 !! value
10290
91+ number : (validator , $element , value ) ->
92+ return true if $element .attr (' type' ) != ' number' || ! (' ' + value).length
93+ validator .config .pattern .number .test (value)
94+
95+ tel : (validator , $element , value ) ->
96+ return true if $element .attr (' type' ) != ' tel' || ! (' ' + value).length
97+ validator .config .pattern .tel .test (value)
98+
99+ email : (validator , $element , value ) ->
100+ return true if $element .attr (' type' ) != ' email' || ! (' ' + value).length
101+ validator .config .pattern .email .test (value)
102+
103103 pattern : (validator , $element , value ) ->
104104 return true if ! $element .attr (' pattern' ) || ! (' ' + value).length
105105 (' ' + value).match ($element .attr (' pattern' ))
@@ -128,16 +128,19 @@ It also exposes the class `InputValidator` for manual instantiating.
128128 onReset : null
129129 onBuildErrorElement : (validator , $element , value , errors ) ->
130130 error = errors[0 ]
131- $hint = $element .parent ().find (validator .config .classes .hint )
131+ $hint = $element .data (' inputvalidator-hint' )
132+
133+ if $hint
134+ $hint .html (error .message )
135+ return
132136
133- unless $hint .length
134- $hint = $ (" <label class='#{ validator .config .classes .hint } ' " +
135- " for='#{ $element .attr (' id' )} '>" +
136- error .message +
137- " </label>" )
137+ $hint = $ (" <label class='#{ validator .config .classes .hint } ' " +
138+ " for='#{ $element .attr (' id' )} '>" +
139+ error .message +
140+ " </label>" )
138141
139142 $element .data (' inputvalidator-hint' , $hint)
140- $element .after ($hint)
143+ .after ($hint)
141144
142145```
143146
0 commit comments