单击后如何禁用提交按钮?

时间:2014-05-22 14:06:34

标签: jquery asp.net-mvc-4

我试图通过使用以下代码在单击后禁用按钮,但它无法正常工作。

查看

<button class="button button-text-only" onclick=" $('#MyForm').submit() ">Create </button>

JS

//inside document.ready
$('#MyForm').submit(function(){
    $('input[type=submit]', this).attr('disabled', 'disabled');
});

TIA

3 个答案:

答案 0 :(得分:4)

FIDDLE DEMO

$('button').click(function() {
    $(this).prop('disabled', true);
});

答案 1 :(得分:1)

使用以下内容禁用按钮...

$('#MyForm').on('click', function () {
    $("#myButton").attr('disabled', 'disabled');
});

然后,如果您需要启用,您可以删除以下禁用...

$("#myButton").removeAttr('disabled');

答案 2 :(得分:1)

我会将您的按钮更改为以下代码

<button id="button-id" class="button button-text-only">Create </button>

然后以这种方式绑定click事件:

$('#button-id').on('click', function(e) {
    e.preventDefault(); //prevent the form from being submitted

    $(this).prop('disabled', true);

    //process form with ajax otherwise your page is just going to reload and the button won't be disabled anymore
    var form = $('#MyForm');
    $.ajax({
        url: form.get(0).action,
        type: form.get(0).method,
        data: form.serialize(),
        success: function (result) {
           //do finished stuff here
           alert('done');
        }
    });
});