我花了很多时间试图使typeahead.js
library正常工作。我不知道该库是否甚至不再受支持,但我从stackoverflow整理了各种答案。
我正在尝试根据用户在框中输入的内容,将库用作输入框的自动建议。我正在尝试使用ajax请求从具有nodejs
数据库的mysql
服务器提取数据。
我正在前端获取数据,但由于没有出现下拉菜单,所以我停留在最后一步
这是HTML和Javascript HTML
<div id="keywords">
<input class="typeahead tt-input" spellcheck="false" autocomplete="on" name="typeahead" type="text" />
</div>
JavaScript
$(document).ready(function(){
$('#keywords .typeahead').typeahead({
hint:true,
highlight: true,
minLength:2
},
{
name: 'typeahead',
display: 'value',
source: function(query, syncResults, asyncResults) {
$.get('/search?key=' + query, function(data) {
console.log(data)
data=JSON.parse(data)
asyncResults(data);
console.log(data)
});
}
})
})
现在数据库中的用户名是:test1,test2和test3
如果我在输入框中输入Te,则可以在Google控制台中看到
(3) ["test", "test2", "test3"]
我认为这证明了ajax请求成功并且正在正确检索数据。
仍然在下拉框中看不到结果。我尝试在很多地方寻找答案,但没有找到答案。任何帮助将不胜感激。