@@ -125,14 +125,15 @@ $.extend( $.fn, {
125
125
// https://jqueryvalidation.org/rules/
126
126
rules : function ( command , argument ) {
127
127
var element = this [ 0 ] ,
128
+ isContentEditable = typeof this . attr ( "contenteditable" ) !== "undefined" && this . attr ( "contenteditable" ) !== "false" ,
128
129
settings , staticRules , existingRules , data , param , filtered ;
129
130
130
131
// If nothing is selected, return empty object; can't chain anyway
131
132
if ( element == null ) {
132
133
return ;
133
134
}
134
135
135
- if ( ! element . form && element . isContentEditable ) {
136
+ if ( ! element . form && isContentEditable ) {
136
137
element . form = this . closest ( "form" ) [ 0 ] ;
137
138
element . name = this . attr ( "name" ) ;
138
139
}
@@ -393,9 +394,10 @@ $.extend( $.validator, {
393
394
} ) ;
394
395
395
396
function delegate ( event ) {
397
+ var isContentEditable = typeof $ ( this ) . attr ( "contenteditable" ) !== "undefined" && $ ( this ) . attr ( "contenteditable" ) !== "false" ;
396
398
397
399
// Set form expando on contenteditable
398
- if ( ! this . form && this . isContentEditable ) {
400
+ if ( ! this . form && isContentEditable ) {
399
401
this . form = $ ( this ) . closest ( "form" ) [ 0 ] ;
400
402
this . name = $ ( this ) . attr ( "name" ) ;
401
403
}
@@ -629,12 +631,14 @@ $.extend( $.validator, {
629
631
. not ( this . settings . ignore )
630
632
. filter ( function ( ) {
631
633
var name = this . name || $ ( this ) . attr ( "name" ) ; // For contenteditable
634
+ var isContentEditable = typeof $ ( this ) . attr ( "contenteditable" ) !== "undefined" && $ ( this ) . attr ( "contenteditable" ) !== "false" ;
635
+
632
636
if ( ! name && validator . settings . debug && window . console ) {
633
637
console . error ( "%o has no name assigned" , this ) ;
634
638
}
635
639
636
640
// Set form expando on contenteditable
637
- if ( this . isContentEditable ) {
641
+ if ( isContentEditable ) {
638
642
this . form = $ ( this ) . closest ( "form" ) [ 0 ] ;
639
643
this . name = name ;
640
644
}
@@ -689,6 +693,7 @@ $.extend( $.validator, {
689
693
elementValue : function ( element ) {
690
694
var $element = $ ( element ) ,
691
695
type = element . type ,
696
+ isContentEditable = typeof $element . attr ( "contenteditable" ) !== "undefined" && $element . attr ( "contenteditable" ) !== "false" ,
692
697
val , idx ;
693
698
694
699
if ( type === "radio" || type === "checkbox" ) {
@@ -697,7 +702,7 @@ $.extend( $.validator, {
697
702
return element . validity . badInput ? "NaN" : $element . val ( ) ;
698
703
}
699
704
700
- if ( element . isContentEditable ) {
705
+ if ( isContentEditable ) {
701
706
val = $element . text ( ) ;
702
707
} else {
703
708
val = $element . val ( ) ;
0 commit comments