我試圖使用typeahead.js使用自定義源(遠程),並且在正常工作時遇到了一些問題。如果我對數據進行硬編碼,事情會正常工作,但是當我嘗試實現對遠程服務的調用時,該調用從不會被調用,因此從不檢索數據來填充預先輸入。使用typeahead.js實現自定義源時遇到問題
下面的代碼:
var places = function(query, cb){
$.getJSON({
url: "https://api.foursquare.com/v2/venues/search?v=20120321&intent=global&query=%QUERY&client_id="+App.fs.client_id+"&client_secret="+App.fs.client_secret,
success: function(results){
cb(results.response.venues);
},
error: function(){
console.log("error");
}
});
};
$("#search").typeahead({
highlight: true
},
{
name: "Places",
displayKey: "name",
source: places
}
);
如果我創建一個名爲results
一個對象,並手動結構中的數據,並傳遞至cb
,一切工作正常。但是,通過這種實現,$.getJSON
甚至從未被調用過。我錯過了什麼?
謝謝!
林猜測鏈接工作不正常。您是否嘗試過手動檢查鏈接是否返回JSON數據? – rockStar