关键字或粘贴的Ajax

时间:2012-07-11 20:21:19

标签: javascript jquery

我正在对keyup或paste进行Ajax请求。问题是当用户使用Control-V进行粘贴时,会发生两个ajax请求 - 一个用于粘贴,一个用于keyup。

$("#my-form").bind('keyup paste', function(e) {...}

在keyup或者粘贴上绑定什么是好方法?

1 个答案:

答案 0 :(得分:5)

您可以使用setTimeout / clearTimeout来延迟事件,因此只触发一次。

$("#my-form").bind('keyup paste', function(e) {
    clearTimeout($(this).data('timeout'));
    $(this).data('timeout', setTimeout(function(){
        // your code
    }, 200));
});

DEMO:http://jsfiddle.net/4b7y5/