jQueryUI version 1.10 autocomplete - how to set _renderItem?
jquery-ui, jquery-ui-autocomplete
Solution
Using `ui-autocomplete` instead should solve your issue.
$("#lexicon-search-input")
.autocomplete({
...
}).data("ui-autocomplete")._renderItem = customItemRenderer;
See the documentation for a tutorial on how to use `_renderItem` (especially the source code)
If you want to create the `_renderItem` function for multiple autocompletes with class `yourClass` just use it in the `create`event
$('.yourClass').autocomplete({
create: function() {
$(this).data('ui-autocomplete')._renderItem ....
}
});
See another answer of me on that topic.
Problem
Since I switched from jqueryui 1.8.1 to 1.10.x I realised that my custom item renderer doesn't work anymore: ``` Uncaught TypeError: Cannot set property '_renderItem' of undefined ``` What is different in new jqueryui versions? Here my code: ``` $("#lexicon-search-input") .autocomplete({ ... }).data("autocomplete")._renderItem = customItemRenderer; ``` This was working on jqueryui 1.8.1 but doesn't on 1.10.3. One more thing: I use multiple autocomplete fields. Therefore, I can not set it globally. For instance, $.ui.autocomplete.prototype._renderItem = customRenderItem would work, but will affect all of my autocompletes.