见于:Avoiding Duplicate form submission in Asp.net MVC by clicking submit twice
脚本代码:
$(document).on('invalid-form.validate', 'form', function () { var button = $(this).find('input[type="submit"]'); setTimeout(function () { button.removeAttr('disabled'); }, 1); }); $(document).on('submit', 'form', function () { var button = $(this).find('input[type="submit"]'); setTimeout(function () { button.attr('disabled', 'disabled'); }, 0); });
注意此脚本使用在 unobtrusive jquery validation之上,而且此脚本缺陷在于当浏览器后退时对于重复提交仍然无效,只能对按钮重复提交起作用。