clearTimeout无法在javascript自动完成脚本中使用

我使用以下代码作为自动完成脚本的一部分,以避免每次按键敲击服务器:

var that = this; textInput.bind("keyup", function() { clearTimeout(that.timer); that.timer = setTimeout (that.doStuff(), 2000); }); 

不幸的是,这并没有清除旧的计时器。 它们仍然都在执行。

有谁知道我错过了什么?

谢谢!

您可能想要使用:

 that.timer = setTimeout (that.doStuff, 2000); 

代替:

 that.timer = setTimeout (that.doStuff(), 2000); 

否则,将立即调用doStuff。