【发布时间】:2011-03-03 00:06:38
【问题描述】:
当用户在文本框中键入内容时,我想使用以下代码搜索数据库。下面的代码运行良好,但似乎效率有点低,好像用户输入速度非常快。我可能会进行比必要更多的搜索。因此,如果用户输入“sailing”,我会搜索“sail”、“saili”、“sailin”和“sailing”。
我想看看是否有办法检测按键之间的任何特定时间,所以只搜索用户停止输入 500 毫秒或类似的时间。
这样的事情有最佳实践吗?
$('#searchString').keypress(function(e) {
if (e.keyCode == 13) {
var url = '/Tracker/Search/' + $("#searchString").val();
$.get(url, function(data) {
$('div#results').html(data);
$('#results').show();
});
}
else {
var existingString = $("#searchString").val();
if (existingString.length > 2) {
var url = '/Tracker/Search/' + existingString;
$.get(url, function(data) {
$('div#results').html(data);
$('#results').show();
});
}
}
【问题讨论】:
标签: jquery ajax search keypress