JS / JQuery表单提交延迟?

我已经实现了这个’locksubmit’插件http://blog.leenix.co.uk/2009/09/jquery-plugin-locksubmit-stop-submit.html ,它将按钮的显示状态更改为禁用。 然后,我希望在发布到表单URL之前将表单延迟几秒钟。

一旦用户点击提交按钮,我必须添加或修改以延迟“post”forms?

谢谢!

取消默认表单提交行为,并同时启动超时:

$('form').submit(function (e) { var form = this; e.preventDefault(); setTimeout(function () { form.submit(); }, 1000); // in milliseconds }); 

这应该与locksubmit插件兼容。

在这里看一个演示: http : //jsfiddle.net/7GJX6/

我认为这就是你要找的东西 – 修改lockSubmit()

 jQuery(':submit').lockSubmit(function(){ setTimeout(5e3); // fancy 5 seconds }); 

并使用选项对象:

  jQuery(':submit').lockSubmit({ submitText: "Please wait", onAddCSS: "submitButtons", onClickCSS: "submitButtonsClicked" },function(){ setTimeout(5e3); })); 

基本上javascript必须等待所有参数在执行正文之前得到解决。 通过在参数期间设置超时,我们延迟返回。