完了メッセージをモーダルウインドウで表示する方法【HTML/CSS/JavaScript・サンプルコード付き】

モーダルウインドウ

完了メッセージをモーダルウインドウで表示する方法

完了メッセージをモーダルウインドウで表示する方法を紹介します。処理を実行するボタンをクリックすると、画面中央に完了内容を知らせるモーダルウインドウが表示されるサンプルです。フォーム送信や登録処理などが正常に完了したことを、ユーザーへ分かりやすく伝えたい場合に利用できます。

このサンプルはHTML・CSS・JavaScriptのみで動作し、「処理を実行する」ボタンから完了モーダルを表示できます。モーダル内には完了を示すアイコン、見出し、メッセージ、閉じるボタンを配置しています。「閉じる」ボタン、右上の「×」ボタン、または背景部分をクリックするとモーダルを閉じられます。

お問い合わせ画面の送信完了、会員サイトの登録完了、管理画面の更新完了、ECサイトの注文受付など、処理結果を明確に案内したい場面に適しています。表示する見出しや説明文、ボタン名、背景色、アイコンの色などはコード内で変更できるため、実際のWebサイトにも合わせやすい構成です。

コードについて 本記事のコードはサンプルコードです。ご利用前に必ず動作確認を行ってください。
免責事項 本コードの利用により発生した損害について、当サイトは一切の責任を負いません。

デモ

完了メッセージモーダル

「処理を実行する」をクリックすると完了メッセージを表示します。

「処理を実行する」をクリックすると完了モーダルが表示されます。「閉じる」「×」ボタン、または背景をクリックすると閉じます。

コードをコピーして使おう!

<!DOCTYPE html>
<html lang="ja">
<head>

  <!-- 文字コード -->
  <meta charset="UTF-8">

  <!-- スマートフォン表示対応 -->
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <!-- ページタイトル -->
  <title>完了メッセージモーダルウインドウ</title>

  <!-- CSSファイルを読み込み -->
  <link rel="stylesheet" href="style.css">

</head>
<body>

  <!-- 完了メッセージモーダルを開く操作エリア -->
  <div class="show-completion-message-modal_wrap">

    <!-- 操作エリアのタイトル -->
    <div class="show-completion-message-modal_title">
      完了メッセージモーダル
    </div>

    <!-- 操作エリアの説明文 -->
    <p class="show-completion-message-modal_text">
      「処理を実行する」をクリックすると完了メッセージを表示します。
    </p>

    <!-- 完了メッセージモーダルを開くボタン -->
    <button
      class="show-completion-message-modal_open"
      type="button"
      data-show-completion-message-modal-open>
      処理を実行する
    </button>

  </div>

  <!-- モーダル背景 -->
  <div
    class="show-completion-message-modal_overlay"
    data-show-completion-message-modal-overlay>

    <!-- モーダル本体 -->
    <div
      class="show-completion-message-modal_modal"
      role="dialog"
      aria-modal="true"
      aria-labelledby="show-completion-message-modal-title">

      <!-- モーダルを閉じるボタン -->
      <button
        class="show-completion-message-modal_close"
        type="button"
        data-show-completion-message-modal-close
        aria-label="閉じる">
        ×
      </button>

      <!-- 完了を示すアイコン -->
      <div
        class="show-completion-message-modal_icon"
        aria-hidden="true">
        ✓
      </div>

      <!-- 完了メッセージのタイトル -->
      <div
        class="show-completion-message-modal_heading"
        id="show-completion-message-modal-title">
        完了しました
      </div>

      <!-- 完了内容を伝えるメッセージ -->
      <p class="show-completion-message-modal_message">
        処理が正常に完了しました。<br>
        内容が正しく保存されています。
      </p>

      <!-- モーダルを閉じるボタン -->
      <button
        class="show-completion-message-modal_button"
        type="button"
        data-show-completion-message-modal-button>
        閉じる
      </button>

    </div>

  </div>

  <!-- JavaScriptファイルを読み込み -->
  <script src="script.js"></script>

</body>
</html>

ファイル構成と設置方法

このサンプルはHTML・CSS・JavaScriptの3ファイルで構成されています。HTMLには完了メッセージモーダルウインドウの構造、CSSにはモーダルやボタンのデザイン、JavaScriptにはモーダルの表示・非表示処理を記述しています。ライブラリを使用せず、HTML・CSS・JavaScriptだけで動作するため、そのままコピーして利用できます。

モーダルは「処理を実行する」ボタンをクリックすると表示され、「閉じる」ボタン、右上の「×」ボタン、または背景をクリックすると閉じます。お問い合わせ画面の送信完了、管理画面の更新完了、会員登録完了など、処理完了をユーザーへ分かりやすく伝えたい場面で利用できます。

表示するタイトルやメッセージ、ボタン名、色などは自由に変更できます。JavaScriptもシンプルな構成のため、実際の送信処理や保存処理が完了したタイミングでモーダルを表示するように組み込むことも簡単です。

sample/
├── index.html
├── style.css
└── script.js

各ファイルの役割
index.html
完了メッセージモーダルウインドウ、タイトル、説明文、ボタンなどのHTML構造を管理します。表示する文章やボタン名を変更できます。

style.css
モーダルウインドウ、背景、完了アイコン、ボタン、余白、角丸、影などのデザインを管理します。

script.js
モーダルを開く処理、閉じる処理、背景クリック時の閉じる処理などを管理します。

設置方法・使い方
sampleフォルダへindex.html・style.css・script.jsを配置します。sample/index.htmlをブラウザで開くと動作を確認できます。「処理を実行する」をクリックすると完了メッセージモーダルが表示され、「閉じる」「×」ボタン、または背景をクリックするとモーダルを閉じます。

カスタマイズできる内容
index.htmlではタイトル、完了メッセージ、ボタン名を変更できます。style.cssではモーダルサイズ、背景色、アイコン色、ボタン色、余白、角丸、影などを変更できます。script.jsではモーダルを表示するタイミングや閉じる処理を編集できます。

数値調整
style.cssのmax-width:420px;を変更するとモーダルの最大横幅が変わります。padding:48px 28px 28px;を変更するとモーダル内部の余白が変わります。width:72px;とheight:72px;を変更すると完了アイコンの大きさが変わります。font-size:38px;を変更するとチェックマークのサイズが変わります。

レスポンシブ対応
style.cssではwidth:100%、max-width、padding、@media(max-width:640px)を使用してレスポンシブ対応しています。スマートフォンではモーダルの余白が自動調整され、タブレット・PCでも中央に見やすく表示されます。



コメント