twitter typeahead.js没有更新建议

时间:2014-10-29 21:48:01

标签: typeahead.js

我遇到的问题是当我开始输入时,建议显示但只是按字母顺序排列并且不会更新。它似乎不根据我的输入过滤结果。据我所知,我正确地获取数据。 json的回应来自The Echo Nest here。我之后的信息是我得到的json回复的类型名称。

var search = new Bloodhound({
datumTokenizer: function(data) { return Bloodhound.tokenizers.whitespace(data.name); },
queryTokenizer: Bloodhound.tokenizers.whitespace,
                limit: 3,
                remote: {
                url:'http://developer.echonest.com/api/v4/artist/list_genres?api_key= JSSXGZIEPOLRS21K7&format=json',
                        filter: function(search) {
                        return $.map(search.response.genres, function(data) { return {     name: data.name }; });
                        }
                }
 });

search.initialize();
$('.typeahead').typeahead(null, {
                name: 'genres',
                displayKey: 'name',
                source: search.ttAdapter()
});

http://jsfiddle.net/o9pcso1u/1/

1 个答案:

答案 0 :(得分:1)

我会在这里回答我自己的问题。所以事实证明我使用的是错误的查询。应该是

http//developer.echonest.com/api/v4/genre/search?api_key=JSSXGZIEPOLRS21K7&format=json&results=10&name=%QUERY

%QUERY是什么,我猜测了typeahead.js用来搜索的文本输入字段。 使用原始查询:

http://developer.echonest.com/api/v4/artist/list_genres?api_key= JSSXGZIEPOLRS21K7&format=json

没有添加%QUERY的位置,因为它只返回了一个列表,并且该列表无法通过上述查询进行搜索。