jQuery等到没有更改文本

时间:2017-06-29 01:53:24

标签: jquery

我试图低估如何做下一件事

$("#id").keyup2sec(...);

我有一个函数,当有keyup时发送Json,问题是它很重要发送5个Json for legnth of 5。 是三种方式,该功能将等待2~秒,所以只有当人finshed打字和2秒通过它将发送

1 个答案:

答案 0 :(得分:1)

您需要的是每次用户在给定时间范围内按键时清除的超时,通常称为限制事件。

通常2秒比平时多,但如果这是你想要的。

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

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

当用户点击一个键时,前一个超时被清除,因此ajax调用永远不会发生,而是将一个新的ajax调用排队,该调用将在两秒内发生,除非用户再次点击一个键等。