jquery autocomplete使用多个源(本地json api和jsonp)

Rov*_*ova 4 javascript json jquery-ui autocomplete jquery-autocomplete

基本上我有一个酒店搜索引擎,在网站顶部有一个搜索字段,必须显示自动完成结果.结果可以是酒店或地点(城市).可与Facebook自动填充相比(搜索可以是人,页面......)

我从基本的geonames jsuery例子开始:http://jqueryui.com/autocomplete/#remote-jsonp

但我无法弄清楚如何使用我自己的JSON api酒店.我知道我应该将我的JSON酒店与地理名称合并吗?有谁能告诉我这是怎么回事?

Nig*_*ier 9

最简单的高级代码应该如下所示,其中requestFromSource1是您请求地理名称的地方,requestFromSource2是您查询自己的自动完成引擎的地方.

  $( "#city" ).autocomplete({
        source: function( request, response ) {
    var resultFromSource1 = null;
    var resultFromSource2 = null;
    var agregateResults = function(){
        if( resultFromSource1 && resultFromSource2){
            var result = resultFromSource1.concat(resultFromSource2);
            response(result);
        }
    }
    requestFromSource1(function( result ){
        resultFromSource1 = result;
        agregateResults();
    });
    requestFromSource2(function( result ){
        resultFromSource2 = result;
        agregateResults();
    });
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

更复杂的情况是通过相关性得分合并.在你的情况下,我担心这个说明是可能的.