我正在尝试为搜索框编写一个自动建议功能。除了一个方面,它似乎在做我想要的一切。所有建议都是针对先前的击键,而不是当前的(最新建议并不代表按下的最新键)。
我的Javascript / JQuery代码如下:
$('#searchBox').keypress(function() {
if ($('#suggest').length < 1) {
$('.search').append('<div id="suggest"></div>');
}
search_text = $('#searchBox').val();
$.ajax({ url: '<?php echo base_url('home/get_suggestions'); ?>',
data: {"search_text": search_text},
type: 'post',
async: 'false',
success: function(data) {
$('#suggest').html(data);
}
});
});
$('#searchBox').blur(function() {
$('#suggest').remove();
});
任何帮助,将不胜感激。谢谢。
最佳答案
尝试使用keyup事件。在keydown或keypress事件中,文本框的值为“ previous”,而keyup事件的值为“ new”。
$('#searchBox').keyup(function() {
...
});
关于javascript - jQuery ajax的Autosuggest总是在后面产生一个建议1击键,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19915520/