本文介绍了关键字或粘贴的Ajax的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在对keyup或paste进行Ajax请求。问题是,当用户使用Control-V进行粘贴时,会发生两个ajax请求 - 一个用于粘贴,一个用于keyup。
I'm doing an Ajax request on keyup or paste. The problem is that when users use Control-V to paste, two ajax requests occur- one for paste, one for keyup.
$("#my-form").bind('keyup paste', function(e) {...}
在keyup或者粘贴上绑定什么是好方法?
What's a good way to bind on either keyup OR paste?
推荐答案
你可以使用 setTimeout
/ clearTimeout
延迟事件,因此它只触发一次。
You can use setTimeout
/clearTimeout
to delay the event, so it only triggers once.
$("#my-form").bind('keyup paste', function(e) {
clearTimeout($(this).data('timeout'));
$(this).data('timeout', setTimeout(function(){
// your code
}, 200));
});
演示:
这篇关于关键字或粘贴的Ajax的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!