jQuery - 防止Ajax POST每10秒发生一次以上

时间:2017-06-01 18:22:57

标签: javascript jquery ajax

我在html中实现了一个向导,显示了一系列面板。有一个Next按钮可以导航到后续面板和Finish按钮。当选择下一个按钮时,我有一个单击处理程序,它执行一些数据的ajax发布以保存表单。我也使用“完成”按钮执行此操作。

用户快速按下“下一步”按钮3-6次并不罕见。如果表单中没有更改数据,我宁愿不排队几个帖子。我的想法是我每10秒才会发一次。有没有办法告诉jQuery这样做?

1 个答案:

答案 0 :(得分:0)

只需围绕jQuery ajax调用创建自己的包装器:

var lastPostCall = 0;

function ajaxWrapper(url, data, ...) {
   if(Date.now()-lastPostCall > 10000) {
      lastPostCall = Date.now();
      // Do the real ajax call
   }
}