脚本解决.NET MVC按钮重复提交问题

见于: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之上,而且此脚本缺陷在于当浏览器后退时对于重复提交仍然无效,只能对按钮重复提交起作用。

 

posted @ 2014-02-17 11:38  朝野布告  阅读(533)  评论(0编辑  收藏  举报