【发布时间】:2013-12-30 07:48:15
【问题描述】:
我正在使用 AJAX 构建一个下拉菜单,我想在实际提交之前将用户查询延迟 3 秒。
所以我尝试了这样的事情:
$("#search").keyup(function(){
clearTimeout(startcounting);
var startcounting = setTimeout(function() {
$.get( "mailing_search.php", { query: $("#searchitem").val() } ).done(function( data ) {
console.log("Query Submitted");
$("#searchbox").html(data);
});
},3000);
}
});
这不起作用。它不会清除超时。
假设我输入“samsung”,它会运行 7 次查询。
有什么帮助吗?
提前致谢。
【问题讨论】:
-
由于 javascript 提升属性,开始计数未定义
-
那么有解决办法吗?
标签: jquery ajax settimeout cleartimeout