我已将 my 设置为在键入setTimeout
最后一个后 1 秒运行。keyup
我正在设置 ajax 服务器端验证。
问题
出于某种原因,这将等待 1 秒,然后触发我返回的多次点击,然后再进行第二次休息。我只希望最后一个按键触发 ajax 调用。
代码
form.items = {
init:function(){
this.call();
},
call:function(){
//Check all visible elements
form.init.mainItems.each(function(){
$(this).keyup(function(){
form.items.main($(this));
});
});
},
main:function(myself){
form.ajaxEvents.ajaxTimer = setTimeout(function(){form.ajaxEvents.call(myself);}, form.ajaxEvents.ajaxTimerSetting);
}
}
};
//Setting up the timer
form.ajaxEvents.ajaxTimer = setTimeout(function(){
form.ajaxEvents.call(myself);
}, form.ajaxEvents.ajaxTimerSetting);
form.ajaxEvents = {
ajaxTimerSetting:1000,
ajaxTimer:null,
call:function(me){
clearTimeout(form.ajaxEvents.ajaxTimer);
//turn off so we wait for ajax to complete
$.ajax({
url:'registration/ajax/'+item,
data:{"info":me.val()},
type:'post',
success:function (data) {
//data
}
});
}
};
提琴手