Checkboxradio: Fix label handling with jQuery 3.x

Fixes #15006
Closes gh-1720
This commit is contained in:
Scott González 2016-07-11 12:11:59 -04:00
parent 21f7f2500c
commit 55cd9488cc

View File

@ -69,7 +69,7 @@ $.widget( "ui.checkboxradio", [ $.ui.formResetMixin, {
// We need to get the label text but this may also need to make sure it does not contain the
// input itself.
this.label.contents().not( this.element ).each( function() {
this.label.contents().not( this.element[ 0 ] ).each( function() {
// The label contents could be text, html, or a mix. We concat each element to get a
// string representation of the label, without the input as part of it.
@ -252,7 +252,15 @@ $.widget( "ui.checkboxradio", [ $.ui.formResetMixin, {
_updateLabel: function() {
// Remove the contents of the label ( minus the icon, icon space, and input )
this.label.contents().not( this.element.add( this.icon ).add( this.iconSpace ) ).remove();
var contents = this.label.contents().not( this.element[ 0 ] );
if ( this.icon ) {
contents = contents.not( this.icon[ 0 ] );
}
if ( this.iconSpace ) {
contents = contents.not( this.iconSpace[ 0 ] );
}
contents.remove();
this.label.append( this.options.label );
},