twitter bootsrap typeahead jquery ajax回调无效

时间:2013-02-08 06:01:20

标签: jquery callback bootstrap-typeahead

问题:twitter bootsrap typeahead jquery ajax回调无法正常工作

我正在使用jQuery v1.8.3,Bootstrap v2.2.1,bootstrap-typeahead.js v2.2.2 收到JSON响应但没有调用回调...

JSON响应 {"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);
    });

  }
});

1 个答案:

答案 0 :(得分:1)

数据应该是

之类的数组
['item 1', 'item 2']

演示:Fiddle

您需要执行类似

的操作
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;
                }));
            }
        });

    }
});

演示:Fiddle