我有一个简单的数据库搜索脚本,当用户在搜索字段中键入时,它会显示搜索结果列表。该脚本工作正常,只是它只在用户键入第二个字母后才开始工作。我希望它在用户输入搜索查询中的第一个字母时开始工作。例如,如果我正在搜索“玩偶”,那么当用户在搜索字段中键入字母“d”时,我希望显示搜索结果。目前,这仅在用户输入“do”后才开始发生。请给我任何建议。
jQuery的:
<script type="text/javascript">
$(function(){
var index = -1;
$(document).on('keyup','#searchField',function(e){
if (e.keyCode == 38){ // up arrow
index = (index == 0) ? 0 : index - 1;
$('tr.search_row').removeClass('highlight_color');
$('tr.search_row:eq(' + index + ')').addClass('highlight_color');
return false;
}
else if (e.keyCode == 40){ // down arrow
index = (index + 1 >= $('tr.search_row').length) ? $('tr.search_row').length - 1 : index + 1;
$('tr.search_row').removeClass('highlight_color');
$('tr.search_row:eq(' + index + ')').addClass('highlight_color');
return false;
}
else
{
var str = $('#searchField').val();
searchScript(str);
}
index = -1;
});
});
</script>
答案 0 :(得分:0)
答案 1 :(得分:0)
我能够看到第一个字母本身调用的查询。我怀疑问题可能出在searchScript函数中。请检查此fiddle。
Post more details about the searchScript function if you are still seeing the error.