Skip to content

Commit 811b377

Browse files
committed
Update data naming for autocomplete. Backwards compatible for overrides of _renderItem. Partial fix for #7810
1 parent 70de33a commit 811b377

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

ui/jquery.ui.autocomplete.js

+10-5
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,8 @@ $.widget( "ui.autocomplete", {
225225
// custom key handling for now
226226
input: $(),
227227
focus: function( event, ui ) {
228-
var item = ui.item.data( "item.autocomplete" );
228+
// back compat for _renderItem using item.autocomplete
229+
var item = ui.item.data( "ui-autocomplete-item" ) || ui.item.data( "item.autocomplete" );
229230
if ( false !== self._trigger( "focus", event, { item: item } ) ) {
230231
// use value to match what will end up in the input, if it was a key event
231232
if ( /^key/.test(event.originalEvent.type) ) {
@@ -234,7 +235,8 @@ $.widget( "ui.autocomplete", {
234235
}
235236
},
236237
select: function( event, ui ) {
237-
var item = ui.item.data( "item.autocomplete" ),
238+
// back compat for _renderItem using item.autocomplete
239+
var item = ui.item.data( "ui-autocomplete-item" ) || ui.item.data( "item.autocomplete" );
238240
previous = self.previous;
239241

240242
// only trigger when focus was lost (click on menu)
@@ -470,13 +472,16 @@ $.widget( "ui.autocomplete", {
470472
_renderMenu: function( ul, items ) {
471473
var self = this;
472474
$.each( items, function( index, item ) {
473-
self._renderItem( ul, item );
475+
self._renderItemData( ul, item );
474476
});
475477
},
476478

477-
_renderItem: function( ul, item) {
479+
_renderItemData: function( ul, item ) {
480+
return this._renderItem( ul, item ).data( "ui-autocomplete-item", item );
481+
},
482+
483+
_renderItem: function( ul, item ) {
478484
return $( "<li></li>" )
479-
.data( "item.autocomplete", item )
480485
.append( $( "<a></a>" ).text( item.label ) )
481486
.appendTo( ul );
482487
},

0 commit comments

Comments
 (0)