Javascript Keyup包含用于阻止结果的筛选

Javascript Keyup包含用于阻止结果的筛选,javascript,jquery,filtering,keyup,Javascript,Jquery,Filtering,Keyup,我有一个html文档,其中的字段用于按块过滤文本。这是我的密码: JS: $('#search-input').on('keyup', function() { var filter = $(this).val(); var results = $('#icons section > .fontawesome-icon-list > .fa-hover:Contains("' + filter + '")'); conso

我有一个html文档,其中的字段用于按块过滤文本。这是我的密码:

JS:

    $('#search-input').on('keyup', function() {

        var filter = $(this).val();

        var results = $('#icons section > .fontawesome-icon-list > .fa-hover:Contains("' + filter + '")');

        console.log(results);

        $('#results .row').html(results);
        $('#results').show();

    }); 
过滤后的数据以block#results.row格式输出


脚本仅在第一次(第一个事件“keyup”)时正常工作。如何使每次事件“键入”时都能正确过滤数据?

您需要克隆结果:

var results = $('#icons section > .fontawesome-icon-list > .fa-hover:Contains("' + filter + '")').clone();

您应该在函数之外声明这些变量。那么是否调用了keyup?过滤线是否返回任何东西?