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 に答える