mirror of
https://github.com/jquery-validation/jquery-validation.git
synced 2025-12-20 09:11:40 +01:00
Core: Make element() handle ignored elements properly.
Allows ignored elements to be validated, removing any errors if necessary. Closes gh-721
This commit is contained in:
committed by
Jörn Zaefferer
parent
5bebaa5c55
commit
3f464a8da4
25
src/core.js
25
src/core.js
@@ -385,15 +385,24 @@ $.extend($.validator, {
|
||||
|
||||
// http://jqueryvalidation.org/Validator.element/
|
||||
element: function( element ) {
|
||||
element = this.validationTargetFor( this.clean( element ) );
|
||||
this.lastElement = element;
|
||||
this.prepareElement( element );
|
||||
this.currentElements = $(element);
|
||||
var result = this.check( element ) !== false;
|
||||
if ( result ) {
|
||||
delete this.invalid[element.name];
|
||||
var cleanElement = this.clean( element );
|
||||
var checkElement = this.validationTargetFor( cleanElement );
|
||||
var result = true;
|
||||
|
||||
this.lastElement = checkElement;
|
||||
|
||||
if (checkElement === undefined) {
|
||||
delete this.invalid[cleanElement.name];
|
||||
} else {
|
||||
this.invalid[element.name] = true;
|
||||
this.prepareElement( checkElement );
|
||||
this.currentElements = $(checkElement);
|
||||
|
||||
result = this.check( checkElement ) !== false;
|
||||
if (result) {
|
||||
delete this.invalid[checkElement.name];
|
||||
} else {
|
||||
this.invalid[checkElement.name] = true;
|
||||
}
|
||||
}
|
||||
//Add aria-invalid status for screen readers
|
||||
$(element).attr("aria-invalid", !result);
|
||||
|
||||
Reference in New Issue
Block a user