如何在提交表单时使用JQuery禁用保存按钮

Nir*_*man 0 jquery submit razor asp.net-mvc-4

我的MVC应用程序中有一个数据输入表单作为razor视图.此视图包含一些输入控件,验证器和提交按钮.当用户点击"提交"按钮时,它会执行验证,如果其中任何一个失败,则用户提交方法将被终止.当满足所有验证时,表单将被提交,但随着某些业务逻辑的执行,需要花费更多的时间.现在我不希望用户在此期间允许点击提交按钮.因此,应禁用"提交"按钮,并在提交完成后重新启用.

我怎样才能做到这一点?我想我需要为此编写JQuery,但不确定,要处理哪个事件.

gdo*_*ica 5

没有看到HTML ...或javascript ...

$('form').submit(function(){
    var $submit = $(this).find('input[type=submit]').prop('disabled', true);

    $.ajax({
        url: 'foo',
        //... the rest...

        complete: function(){
            $submit.prop('disabled', false);
        }
    });
})
Run Code Online (Sandbox Code Playgroud)