HTMLFormElement: submit() メソッド

HTMLFormElement.submit() メソッドは、このフォーム (<form>) を送信します。

このメソッドは、フォームの送信 <button> をアクティブにするのと似ていますが、同じではありません。ただ、このメソッドを直接呼び出す場合は、

  • submit イベントは発生しません。特に、フォームの onsubmit イベントハンドラーは実行されません。
  • 制約検証は行われません。

HTMLFormElement.requestSubmit() メソッドはフォームの送信ボタン (<button>) を使用にするのと同じで、これらの相違点はありません。

フォームコントロール(送信ボタンなど)に name または idsubmit のものがある場合、submit メソッドがマスクされます。myForm.submit(); を呼び出そうとすると "submit is not a function" のエラーが発生します。この場合、submitname または idsubmit であるコントロールを参照しているからです。

<input> で type="submit" の属性を持つものは HTMLFormElement.submit() ではフォームと一緒に送信されませんが、本来の HTML フォームの送信で行う場合は送信されます。

構文

js
submit()

引数

なし。

返値

なし (undefined)。

js
document.forms["myform"].submit();

仕様書

Specification
HTML Standard
# dom-form-submit-dev

ブラウザーの互換性

BCD tables only load in the browser