我正在通过以下链接从它的api中恢复Bing值:
http://api.bing.net/qson.aspx?Query=s&Market=en-us&JsonType=callback&JsonCallback=
现在,当我在keyup上解析结果并将它们附加到正文中时它会起作用,但是当我在jQuery的自动完成上设置结果时它不会。
以下是示例:http://jsfiddle.net/LkVcg/
注意:在小提琴中,我还包括雅虎的自动推荐,它使用相同的方法,以便我可以证明它应该有效。
我做错了什么? 如何将Bing的结果显示在jQuery的自动完成()上?
答案 0 :(得分:2)
Here是小提琴的工作版本。
有两个关键变化:
因此:
$("#bing_auto").autocomplete({
source: function (request, response) {
console.log("source");
$.ajax({
url: "http://api.bing.net/qson.aspx?Query=" + encodeURIComponent(request.term) + "&JsonType=callback&JsonCallback=?",
dataType: "jsonp",
/*data: {
"Query": request.term,
"JsonType": "callback",
"JsonCallback" : "?"
},*/
success: function (data) {
console.log("success!");
var suggestions = [];
$.each(data.SearchSuggestion.Section, function (i, val) {
console.log("suggestion: " + val.Text);
suggestions.push(val.Text);
});
response(suggestions);
}
});
}
});
(如果您愿意,请取出“console.log()”调用: - )