オートコンプリート検索に bootstrap-typeahead.js v2.0.0 を使用しています。結果を表示するためのクリック イベントがありますが、10 回に 1 回しか機能しません。それ以外の場合は、「Uncaught SyntaxError: Unexpected token u」というエラーが発生します。
私は周りを見回してこれを見つけました:https://github.com/twitter/bootstrap/issues/4018そしてそこで解決策を試しましたが、何もうまくいかないようです。エンターキーを使用すると完璧に機能するので、クリックイベントに関するものでなければなりません。他の誰かが同じ問題を抱えていますか?コード:
$('#search').typeahead({
source: function (typeahead, query) {
$.ajax({
type: "GET",
url: "search/" + query,
success: function (data) {
searchResult = data;
return typeahead.process(data);
},
error: function (xhr, ajaxOptions, thrownError) {
console.log(thrownError);
}
});
}
},
onselect: function (obj) {
window.location.href = "view/" + obj.id;
},
items: 8,
minLength: 1,
highlighter: function (item) {
var artist = _.find(searchResult, function (a) {
return item === a.value;
});
return ('<li>' + artist.value + ' (' + artist.dbirth + '-' + artist.ddeath + ')<li>');
}
});