1. ホーム
  2. javascript

[解決済み] フォーム送信時に送信ボタンを無効にする

2023-05-24 17:07:42

質問

自分のサイトの投稿ボタンをクリック後、無効にするコードを書きました。

$('input[type=submit]').click(function(){
    $(this).attr('disabled', 'disabled');
});

残念ながら、フォームが送信されません。どうすれば直せますか?

EDIT フォームではなく、サブミットをバインドしたいのですが :)

どのように解決するのですか?

実行する onSubmit() :

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

実際に submit イベントをトリガーする前に、ボタンを完全に無効にしているのです。

ページ上のすべてのsubmitタイプの入力を選択しないように、IDまたはCLASSで要素に名前を付けることも考えるべきでしょう。

デモです。 http://jsfiddle.net/userdude/2hgnZ/

(注、私は preventDefault()return false で、この例ではフォームが実際に送信されないようにしています。)