カテゴリ: JavaScript 更新日: 2026/02/05

JavaScriptのフォーム送信イベントの仕組みと活用例

JavaScriptのフォーム送信イベントの仕組みと活用例
JavaScriptのフォーム送信イベントの仕組みと活用例

先生と生徒の会話形式で理解しよう

生徒

「Webサイトで入力フォームを送信したときに、自動で何か処理をしたいです。」

先生

「それなら、JavaScriptのフォーム送信イベントsubmitを使います。フォームが送信されるタイミングで処理を実行できるんです。」

生徒

「送信する前に入力内容をチェックすることもできますか?」

先生

「もちろんです。submitイベントで入力内容を確認して、不備があれば送信を止めることもできます。」

1. submitイベントとは?

1. submitイベントとは?
1. submitイベントとは?

フォームのsubmitイベントは、ユーザーが送信ボタンをクリックしたときやEnterキーを押したときに発生します。JavaScriptでこのイベントを使うと、送信時に独自の処理を加えることができます。例えば、入力内容の検証やアラート表示、非同期通信などです。

2. フォーム送信を止める方法

2. フォーム送信を止める方法
2. フォーム送信を止める方法

フォーム送信を止めるには、イベントオブジェクトのpreventDefault()メソッドを使います。これにより、サーバーに送信される前に処理を行うことが可能です。


const form = document.getElementById("myForm");

form.addEventListener("submit", function(event) {
  const input = document.getElementById("name").value;
  if (input === "") {
    event.preventDefault(); // 送信を止める
    alert("名前を入力してください");
  }
});

この例では、名前が空の場合は送信を止め、アラートで警告を表示しています。

3. 送信時に非同期で処理する方法

3. 送信時に非同期で処理する方法
3. 送信時に非同期で処理する方法

フォーム送信時にページをリロードせずにデータを送信したい場合は、fetchXMLHttpRequestを使った非同期通信が便利です。


form.addEventListener("submit", function(event) {
  event.preventDefault(); // ページリロードを防ぐ

  const formData = new FormData(form);
  fetch("/submit", {
    method: "POST",
    body: formData
  })
  .then(response => response.text())
  .then(data => {
    console.log("送信結果:", data);
  });
});

この例では、サーバーにフォームデータを非同期で送信し、結果をコンソールに表示しています。ユーザーはページのリロードなしで操作できます。

4. 入力内容をチェックして送信する方法

4. 入力内容をチェックして送信する方法
4. 入力内容をチェックして送信する方法

フォーム送信前に入力内容をチェックして、不正なデータを防ぐことが大切です。例えば、メールアドレスの形式を確認することも可能です。


form.addEventListener("submit", function(event) {
  const email = document.getElementById("email").value;
  const emailPattern = /^[^@\s]+@[^@\s]+\.[^@\s]+$/;

  if (!emailPattern.test(email)) {
    event.preventDefault();
    alert("正しいメールアドレスを入力してください");
  }
});

この例では、正規表現を使ってメールアドレスの形式を確認し、正しくなければ送信を止めます。

5. まとめのポイント

5. まとめのポイント
5. まとめのポイント

フォーム送信イベントは、ユーザーが送信操作をしたときに発生するイベントです。submitイベントを活用することで、送信前の入力チェックや非同期送信、ユーザーへのフィードバックを行うことができます。イベントオブジェクトのpreventDefault()を使うことで、送信を一時的に止めてカスタム処理を実行することが可能です。

これにより、ユーザーにとって使いやすく、安全なフォーム操作が実現できます。

カテゴリの一覧へ
新着記事
New1
JavaScript
JavaScriptの条件式で論理演算子(&&, ||, !)を活用する方法!初心者でもわかる使い方ガイド
New2
TypeScript
TypeScriptでエラー処理を共通関数化して効率的に開発しよう!初心者向け例外処理ガイド
New3
JavaScript
JavaScriptの条件式における比較演算子の使い方まとめ!初心者でもわかる基本ルールと活用法
New4
JavaScript
JavaScriptのswitch文の基本構文と使いどころを学ぼう!初心者でもわかる条件分岐の書き方
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
JavaScript
JavaScriptのtoStringとString関数の違いを初心者向けに解説
No.3
Java&Spring記事人気No3
TypeScript
TypeScriptでコメントを書く正しい書き方と使い分け【初心者向けにやさしく解説】
No.4
Java&Spring記事人気No4
JavaScript
JavaScriptで統一感のあるコードを書くための基本ルール完全ガイド初心者向けコーディング規約入門
No.5
Java&Spring記事人気No5
JavaScript
JavaScriptプログラムの実行方法まとめ!ブラウザ・Node.js・コンソールの使い方
No.6
Java&Spring記事人気No6
JavaScript
JavaScriptのonclick・onchangeなどの基本イベントを理解しよう
No.7
Java&Spring記事人気No7
TypeScript
TypeScriptのnever型を使ったエラーハンドリング!例外処理を極める安全なコードの書き方
No.8
Java&Spring記事人気No8
JavaScript
JavaScriptでクエリパラメータを取得する方法を完全解説 URLSearchParamsの使い方を初心者向けに丁寧に説明