基本上我有一个酒店搜索引擎,在网站顶部有一个搜索字段,必须显示自动完成结果。结果可以是酒店或地点(城市)。可与Facebook自动填充相比(搜索可以是人,页面......)
我从基本的geonames jsuery示例开始:http://jqueryui.com/autocomplete/#remote-jsonp
但我无法弄清楚如何将自己的JSON api用于酒店。我知道我应该将我的JSON酒店与地理名称合并吗?谁可以告诉我一个如何做到的片段?
答案 0 :(得分: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();
});
}
});
});
更复杂的情况是通过相关性得分合并。在你的情况下,我担心这个说明是可能的。