jQuery将等待,直到不再更改任何文本

jQuery将等待,直到不再更改任何文本,jquery,Jquery,我尽量少说我下一步该怎么做 $("#id").keyup2sec(...); 我有一个函数,在有keyup的时候发送Json,问题是发送5个Json来表示5的长度。 这是三种方法,函数将等待2秒,因此只有当用户完成键入并通过2秒后,才会发送它。您需要的是一个超时,用户在给定时间范围内每次点击一个键时,该超时都会被清除,通常称为限制事件 一般来说,2秒比正常时间长,但如果这是你想要的 $("#id").on('keyup', function() { clearTimeout( $(th

我尽量少说我下一步该怎么做

$("#id").keyup2sec(...);
我有一个函数,在有keyup的时候发送Json,问题是发送5个Json来表示5的长度。
这是三种方法,函数将等待2秒,因此只有当用户完成键入并通过2秒后,才会发送它。您需要的是一个超时,用户在给定时间范围内每次点击一个键时,该超时都会被清除,通常称为限制事件

一般来说,2秒比正常时间长,但如果这是你想要的

$("#id").on('keyup', function() {
    clearTimeout( $(this).data('keytimer') );

    $(this).data('keytimer', setTimeout(function() {
        $.ajax(...);
    },2000));
});

当用户点击一个键时,先前的超时被清除,因此ajax调用永远不会发生,相反,它会将两秒钟后发生的新ajax调用排队,除非用户再次点击一个键等。

先生,我可以问一下。。这将始终清除每次键控的2秒超时,直到他停止键控等待2秒,然后运行ajax?我说得对吗?它与
data()
有什么关系?计时器必须存储在某处,以便以后能够引用并清除它,因此使用
data
我看到这一行
$(this).data('keytimer',setTimeout(function()){
正在设置超时时间..这是我第一次看到它被设置为点亮此灯。您是否在键盘启动之前就已经设置好了?我可以根据您的答案创建简单的演示,但它不会更改
数据键盘计时器中的数据
可以吗?