我使用的引导与typeaheads工作。 我可以使用输入字段中设置类型aheads:
var subjects = ['PHP', 'MySQL', 'SQL', 'PostgreSQL', 'HTML', 'CSS', 'HTML5', 'CSS3', 'JSON'];
$('#search-field').typeahead({source: subjects});
但是,这是静态的。 我想提供自动提示功能,从而为用户键入的字符/字,我获取由用户输入的查询,使一个HTTP请求来获取JSON格式的建议。 以下是我的代码来做到这一点:
$('#search-field').on('keyup', function(){
// fetch the search query
var query = $(this).val();
// array containing suggestions
var suggestions=[];
$.getJSON('http://localhost:8983/solr/suggest/?q='+ query +'&wt=json&json.wrf=?', {
})
.done(function(response){
console.log(response);
$.each(response.spellcheck.suggestions[1].suggestion, function(){
// add the suggestions into the array
suggestions.push(this);
});
// set the source for typeahead
$('#search-field').typeahead({source: suggestions});
// how to trigger the search field to show these suggestions now???
});
所以你可以看到,我取的建议,建立一个数组并设置预输入源。 但建议不会因为显示了有什么东西,应进入这样做会再次打电话给我“的keyup”事件处理程序:(!那么,有没有办法解决这个问题,只要源登记显示typeaheads方式为了它??