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?
 
     
     
    