许多人正在使用带有这样的远程数据源的jQuery Autocomplete:
$("#auto").autocomplete({
source: function( request, response ) {
$.getJSON( "search.php", { // get the json here
term: extractLast( request.term ) // function further, up not important
}, response );
}
});
许多人正在过滤他们的数据数组:
$("#auto").autocomplete({
source: function(request, response) {
var results = $.ui.autocomplete.filter(myarray, request.term); //data in "myarray"
response(results) ;
}
});
我找不到任何人过滤远程数据源的例子,我真的需要两者。如果可能的话,我想将它们组合成代码块。
感谢。
答案 0 :(得分:1)
你应该只使用"过滤器"如果您的数据是本地存储的。如果它是远程的,你应该先在服务器端过滤它,然后再发送它。
来自jQuery UI文档:
自动完成插件不会过滤结果,而是添加一个带有术语字段的查询字符串,服务器端脚本应使用该字段来过滤结果。例如,如果source选项设置为" http:// example.com"并且用户键入foo,将向http:// example.com?term=foo发出GET请求。数据本身的格式与上述本地数据的格式相同。
http://api.jqueryui.com/autocomplete/
您的第一个示例适用于此方案。