1
我在Bootstrap中使用typeahead爲我的應用程序使用Ajax從服務器端獲取建議。
一切都只是罰款:我寫正確的輸入,並獲得像「走的建議Dead'.When我開始輸入了錯誤的輸入,像walkkkk,建議仍然存在,除非我按ESC鍵。它讓我很煩。
我檢查了服務器端,當我開始輸入錯誤的輸入時,服務器不返回任何內容。
如何自動隱藏建議?鍵入自舉:當輸入不匹配時,建議保留在那裏
這裏是相對的js代碼:
$('#query').typeahead({
source: function(query, process){
suggestions = {};
labels = [];
$.post('suggest.do', {query: query, limit: '10'}, function(data){
var sugg = jQuery.parseJSON(data).data;
if(sugg == 'NOTHING' || sugg == 'ERROR'){
return;
}
$.each(sugg, function(index, item){
suggestions[item.name] = item;
labels.push(item.name);
});
return process(labels);
});
},
items: 10,
minLength: 1,
updater: function(item){
//irrelative code
},
matcher: function(item){
return true;
},
highlighter: function(item){
var ent = suggestions[item];
var html = '' +
'<div class="entity-block">' +
'<span class="label label-important">' + ent.type + '</span> ' +
'<span class="sugg-name">' + ent.name + '</span>' +
'</div>';
return html;
}
});
你爲什麼不只是發送異步請求到服務器之前清除建議 – dreamweiver