Core: Escape id/name before using it as a selector in errorsFor

Fixes #1275
This commit is contained in:
Jörn Zaefferer
2014-09-23 13:27:51 +02:00
parent a8765ff614
commit 20f3e9fac9
3 changed files with 19 additions and 1 deletions

View File

@@ -807,9 +807,10 @@ $.extend( $.validator, {
var name = this.idOrName( element ),
describer = $( element ).attr( "aria-describedby" ),
selector = "label[for='" + name + "'], label[for='" + name + "'] *";
// aria-describedby should directly reference the error element
if ( describer ) {
selector = selector + ", #" + describer.replace( /\s+/g, ", #" );
selector = selector + ", #" + describer.replace( /[\[\]]/g, "\\$&" ).replace( /\s+/g, ", #" );
}
return this
.errors()