Skip to content

Commit da17a23

Browse files
committed
Autocomplete: Handle detached elements for appendTo after create.
1 parent 1481b08 commit da17a23

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

tests/unit/autocomplete/autocomplete_options.js

+5-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ module( "autocomplete: options" );
55
var data = [ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby", "python", "c", "scala", "groovy", "haskell", "perl" ];
66

77
test( "appendTo", function() {
8-
expect( 7 );
8+
expect( 8 );
99
var detached = $( "<div>" ),
1010
element = $( "#autocomplete" ).autocomplete();
1111
equal( element.autocomplete( "widget" ).parent()[0], document.body, "defaults to body" );
@@ -39,6 +39,10 @@ test( "appendTo", function() {
3939
});
4040
equal( element.autocomplete( "widget" ).parent()[0], detached[0], "detached DOM element" );
4141
element.autocomplete( "destroy" );
42+
43+
element.autocomplete().autocomplete( "option", "appendTo", detached );
44+
equal( element.autocomplete( "widget" ).parent()[0], detached[0], "detached DOM element via option()" );
45+
element.autocomplete( "destroy" );
4246
});
4347

4448
function autoFocusTest( afValue, focusedLength ) {

ui/jquery.ui.autocomplete.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -314,7 +314,7 @@ $.widget( "ui.autocomplete", {
314314
this._initSource();
315315
}
316316
if ( key === "appendTo" ) {
317-
this.menu.element.appendTo( this.document.find( value || "body" )[0] );
317+
this.menu.element.appendTo( this._appendTo() );
318318
}
319319
if ( key === "disabled" && value && this.xhr ) {
320320
this.xhr.abort();

0 commit comments

Comments
 (0)