加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ajax – 在jquery ui自动完成中组合本地源和远程源

发布时间:2020-12-16 02:52:39 所属栏目:百科 来源:网络整理
导读:我在 javascript中包含了常用术语列表,然后我还希望通过ajax响应从服务器获取json响应.怎么做到呢? var projects = ["apple","orange"];$('#search').autocomplete({ source: projects}); 然后追加ajax的结果? 解决方法 您将采用的方法是将从服务器返回的
我在 javascript中包含了常用术语列表,然后我还希望通过ajax响应从服务器获取json响应.怎么做到呢?

var projects = ["apple","orange"];

$('#search').autocomplete({
    source: projects
});

然后追加ajax的结果?

解决方法

您将采用的方法是将从服务器返回的结果与本地结果数组相结合.您可以通过将函数传递给自动完成的源选项来完成此操作:

您必须执行三个步骤:

>发出AJAX请求并从服务器获取结果.
>过滤本地阵列
>结合结果

这应该很简单.像这样的东西会起作用:

$("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/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读