我在javascript中包含了常用术语列表,然后我还希望通过ajax响应从服务器获取json响应。怎么办呢?
var projects = ["apple", "orange"];
$('#search').autocomplete({
source: projects
});
然后追加ajax的结果?
答案 0 :(得分:6)
您将采用的方法是将从服务器返回的结果与本地结果数组相结合。您可以通过将函数传递给自动完成的source
选项来完成此操作:
您必须执行三个步骤:
这应该很简单。像这样的东西会起作用:
$("input").autocomplete({
source: function(request, response) {
/* local results: */
var localResults = $.ui.autocomplete.filter(localArray, request.term);
/* Remote results: */
$.ajax({
/* AJAX options omitted... */
success: function(data) {
/* Process remote data using $.map, if necessary, then concatenate local
* and remote results.
*/
response(data.concat(localResults));
}
});
}
});
我在这里做了一个完整的例子:http://jsfiddle.net/FZ4N4/