使用切片函数限制结果#自动完成jquery ui

时间:2013-11-22 05:42:34

标签: javascript jquery jquery-ui

我有同样的问题:Limit results autocomplete jquery ui with slice function,过去2小时左右一直在寻找解决方案(除了使用CSS隐藏)。

我想在此处添加此切片功能,演示:https://stackoverflow.com/a/7617637/1607449

$("#auto").autocomplete({
source: function(request, response) {
    var results = $.ui.autocomplete.filter(myarray, request.term);

    response(results.slice(0, 10));
   }
});

我想在本例中使用脚本:http://jsfiddle.net/h5E6C/(不是我的数组/脚本,但我的设置类似)。

我正在寻找这个问题的解决方案,所以请不要回复建议在发送之前使用PHP / SQL过滤数据等。不要故意粗鲁..

我可以让任何一个脚本彼此独立工作但不能一起工作:/

1 个答案:

答案 0 :(得分:0)

想出来,只需要添加

.slice(0, 10)

到另一个响应函数。

在:

function custom_source(request, response) {
    var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
    response($.grep(schools, function(value) {
        return matcher.test(value.value)
            || matcher.test(value.nickname);
    }));
}

后:

function custom_source(request, response) {
    var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
    response($.grep(schools, function(value) {
        return matcher.test(value.value)
            || matcher.test(value.nickname);
    }).slice(0, 10)
);
}

以为我已经尝试过了,但我必须先将切片功能放在错误的位置。