JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

フォーム送信時にJavaScript関数を呼び出す方法|onsubmitイベントの使い方

Webフォームを送信する際、入力内容のチェック(バリデーション)を行いたい場面は多くあります。そんなときに活躍するのが onsubmit イベントです。

onsubmitイベントとは?

onsubmit イベントは、ユーザーがフォームを送信しようとしたタイミングで発生します。このイベントを利用することで、フォームのデータがWebサーバーへ送信される前に、JavaScriptによる入力値の検証(バリデーション)を実行できます。

基本的な仕組み

以下の例では、フォームデータをWebサーバーへ送信する前に validate() 関数を呼び出しています。

  • validate() 関数が true を返した場合 → フォームは正常に送信されます
  • validate() 関数が false を返した場合 → データは送信されず、処理が中断されます

JavaScript側のコード例

<script>
   <!--
      function validate() {
         // ここにすべてのバリデーション処理を記述します
         // .........
         // 検証結果に応じて true または false を返します
         return true; // または false
      }
   //-->
</script>

バリデーション関数内では、入力フィールドが空でないか、メールアドレスの形式が正しいかなどをチェックし、問題がなければ true、エラーがあれば false を返すようにします。

HTML側のコード例

<form method="POST" action="new.cgi" onsubmit="return validate()">
   …
   <input type="submit" value="送信" />
</form>

ポイントは onsubmit="return validate()" の部分です。return を付けることで、関数の戻り値(true / false)がそのままフォーム送信の可否として反映されます。return を忘れると、false が返されても送信が止まらないので注意しましょう。

まとめ

onsubmitイベントを使えば、サーバーにデータを送る前にクライアント側で入力チェックを行えます。これにより、無効なデータの送信を防ぎ、ユーザーにも即座にエラーを通知できるため、より使いやすいフォームを構築できます。

  1. クリックイベントでJavaScript関数を呼び出す方法をわかりやすく解説

    JavaScriptとHTMLのやり取りは、ユーザーやブラウザがページを操作した際に発生する「イベント」を通じて処理されます。たとえば、ページが読み込まれること自体もイベントの一つです。ユーザーがボタンをクリックすれば、そのクリックもイベントとして扱われます。このほかにも、キーボードのキーを押す、ウィンドウを閉じる、ウィンドウのサイズを変更するなど、さまざまな操作がイベントとして検出されます。onclickイベントとはonclick()イベントは、ユーザーがマウスの左ボタンをクリックした瞬間に発生するイベントです。フォーム送信前の入力値チェック(バリデーション)や、警告メッセージの表示など、ク

  2. JavaScriptのcall()メソッドとは?使い方と実行例をわかりやすく解説

    JavaScriptのcall()メソッドを使うと、あるオブジェクト向けに定義されたメソッドを、別のオブジェクトに対しても再利用できます。つまり、同じ関数をさまざまなオブジェクトから呼び出せるようになるのです。call()メソッドの大きな特徴は、引数(パラメータ)をカンマ区切りで個別に渡すという点です。これにより、thisの参照先を任意のオブジェクトに変更しながら、必要な値も同時に渡せます。call()メソッドの基本的な仕組みcall()は以下のような形式で使用します。関数名.call(thisArg, 引数1, 引数2, ...)第1引数(thisArg):関数内でthisとして参照されるオ