Я установил typeahead.js версии 0.11.1, чтобы вытащить города из API geobytes. Вот codepen, что делает именно это:Странное поведение от typeahead.js
http://codepen.io/jeremeevans/pen/OVPram
var cities = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace(),
queryTokenizer: Bloodhound.tokenizers.whitespace,
remote: {
url: "http://gd.geobytes.com/AutoCompleteCity?callback=?&template=<geobytes%20city>,%20<geobytes%20code>&filter=US&q=%QUERY",
wildcard: "%QUERY",
dataType: "jsonp",
transform: function (response) {
return response;
}
},
limit: 10
});
$("#city").typeahead({
minLength: 3,
highlight: true,
hint: true
}, {
name: "US-Cities",
source: cities
});
Странное поведение я вижу в том, что, когда я начинаю набирать Сиэтл, когда я получаю «Seat» это только листинг два результата " Seaton, IL "и" Seatonville, IL ". Я знаю, что API возвращает гораздо больше результатов, включая «Сиэтл, штат Вашингтон». Кроме того, если вы начнете поиск «Эверетта», все результаты выпадают на «Эверет» и остаются невидимыми до тех пор, пока вы не доберетесь до «Эверетта», - в этот момент он показывает «Эверетт, Массачусетс» и «Эверетт, штат Пенсильвания», но не «Эверетт» , WA ".
Документация по параметрам, относящаяся к версии 0.11.1, довольно ужасна в отношении https://github.com/twitter/typeahead.js. - Я бы очень признателен за то, как использовать это и не иметь мясника, результаты которого он показывает.
Возможно, посмотрите: http://stackoverflow.com/questions/31007825/bootstrap-typeahead-not-showing-hints-as-expected – Reid