0

我的 MVC 应用程序中有一个数据输入表单作为剃刀视图。此视图包含一些输入控件、验证器和一个提交按钮。当用户点击提交按钮时,它会执行验证,如果其中任何一个失败,用户提交方法就会终止。当所有的验证都满足时,表单就会被提交,但是由于一些业务逻辑的执行需要更多的时间。现在我不希望用户在此期间允许点击提交按钮。所以提交按钮应该被禁用,一旦提交完成,它应该被重新启用。

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

4

2 回答 2

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);
        }
    });
})
于 2013-03-01T06:45:52.720 回答
1

尝试以下操作:

$("form").submit(function() {
    var form = this;
    setTimeout(function() {
       $(':submit', form).attr('disabled', true);
    }, 50)
});
于 2013-03-01T06:45:34.563 回答