I have code setup like on this fiddle but autocomplete isn't filtering results while typing.
jQuery(document).ready(function($) {
var autocompleteTerms = JSON.parse( posts );
$('#post-search').autocomplete({
minLength: 2,
source: function (request, response) {
response($.map(autocompleteTerms, function (value, key) {
return {
label: value.post_title,
value: value.ID
}
}));
},
focus: function(event, ui) {
$('#post-search').val(ui.item.post_title);
return false;
},
change: function (event, ui) {
if (!ui.item) {
$("#post-search").val('');
$('#post-search-result').val('');
}
},
select: function(event, ui) {
$('#post-search').val(ui.item.label);
$('#post-search-result').val(ui.item.value);
return false;
}
});
});
This is part of the wordpress plugin and data to post variable is passed using
wp_localize_script('post-title-autocomplete', 'posts', [json_encode($results)]);
Do I need to incorporate this answer about Filter response in jQuery autocomplete in my code?