twitter bootsrap typeahead jquery ajax回调不工作
问题:twitter bootsrap typeahead jquery ajax回调不工作 我使用的是jqueryv1.8.3、Bootstrap v2.2.1、Bootstrap-typeahead.js v2.2.2 正在接收JSON响应,但未调用回调 JSON响应twitter bootsrap typeahead jquery ajax回调不工作,jquery,callback,bootstrap-typeahead,Jquery,Callback,Bootstrap Typeahead,问题:twitter bootsrap typeahead jquery ajax回调不工作 我使用的是jqueryv1.8.3、Bootstrap v2.2.1、Bootstrap-typeahead.js v2.2.2 正在接收JSON响应,但未调用回调 JSON响应 {“ResultSet”:{“Query”:“face”,“Result”:[{“symbol”:“FB”},{},{}..]} 我看到了与这个问题相关的不同帖子,并尝试了它们。 但是没有一个是为我工作的。有人遇到过这样的问题
{“ResultSet”:{“Query”:“face”,“Result”:[{“symbol”:“FB”},{},{}..]}
我看到了与这个问题相关的不同帖子,并尝试了它们。
但是没有一个是为我工作的。有人遇到过这样的问题吗
inputSearch.typeahead({
source: function (query, processSearchResults) {
query = inputSearch.val();
return $.getJSON('ticker_search', { query: query }, function (data) {
return processSearchResults(data);
});
}
});
数据应该是类似于
['item 1', 'item 2']
演示:
你需要像这样做
inputSearch.typeahead({
source: function (query, processSearchResults) {
query = inputSearch.val();
return $.getJSON('ticker_search', { query: query }, function (data) {
if(data && data.ResultSet && $.isArray(data.ResultSet.Result)){
processSearchResults($.map(data.ResultSet.Result, function(item, index){
return item.symbol;
}));
}
});
}
});
演示:是的,我同意。但是我有'processSearchResults(data)=>这个回调函数形成了指向typeahead功能源的数组。这里有什么问题吗?
processSearchResults
是从typeahead
插件传递的回调方法,它需要一个数组,但您正在传递一个数据对象。您是正确的。它需要一个数组。我按照你的建议更改了代码。现在可以了。我误解了引导程序的typeahead回调部分。非常感谢Arun。