Javascript 定时器在按键时重新启动?

标签 javascript jquery ajax

O,所以我有一个“实时搜索”ajax 搜索,它当前在每个键上运行 sql 搜索(通过 ajax)。

我更喜欢的是:

在未按下某个键(例如 800 毫秒)后运行 sql 搜索

.

所以我想要一个在按键时启动的计时器, 如果计时器达到 800ms,则调用 ajax, 如果发生新的 keyup 事件,计时器将重新启动

我该怎么做?

最佳答案

(function () {

var theTimeout;

function doSearch() {
  // Do Search
};

$('#theField').bind('keyup', function () {
  clearTimeout(theTimeout);

  theTimeout = setTimeout(doSearch, 800);
});

}())

关于Javascript 定时器在按键时重新启动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2492086/

相关文章:

javascript - 如何使用循环多次(同步)调用同一个异步函数?

jquery - select2 4.0 和 Bootstrap 工具提示

仅当元素存在时 Ajax 渲染

javascript - 使用 ember 获取 JSON 响应

javascript - cordova ios 中的谷歌地图加载问题

javascript - 为什么我的时钟不能第二次停止-为什么clearInterval不能第二次工作(javascript)

javascript - 如何在不使用 php/javascript 中的 window.print() 的情况下将文件直接发送到打印机

javascript - 当可排序被丢弃时会发出警报

javascript - 绑定(bind)到流程图.js 中的行

javascript - 进行中的 Ajax 请求突然开始返回状态 = 0