我在客户端脚本方面有点弱(或者可能很弱)。我正在尝试在用户停止输入后等待 500 毫秒来实现延迟调用以执行 ajax 保存。
我在这里找到了这个很棒的解决方案。但是我生成的函数需要触发保存的原始元素。我怎样才能通过这个值?
这是我的调用代码:
$('#OrderDetailsTabs').on('keyup', 'form[id^="frmWorkOrderHdr"] textarea', function (event) {
var thisElement = this;
delay(function (thisElement) {
alert('Time elapsed!');
saveWOHdr(thisElement);
},
1000);
})
这是延迟变量的定义:
var delay = (function () {
var timer = 0;
return function (callback, ms) {
clearTimeout(timer);
timer = setTimeout(callback, ms);
};
})();
saveWOHdr 需要将原始元素传递给它。