Menu
Coddy logo textTech

カスタムエラーメッセージ

CoddyのHTMLジャーニー「JavaScriptの実践」セクションの一部。レッスン 6/27。

Custom error messages は、ユーザーが form input の何が問題なのかを理解するのに役立ちます。form validation のためにそれらを作成して display する方法を学びましょう。

まず、基本的な入力フィールドとその隣に span を作成し、そこで message を表示します:

<input type="text" id="username" placeholder="Enter username">
<span id="usernameError" class="error"></span>

では、入力を検証してカスタムエラーメッセージを表示するために、JavaScriptを追加しましょう:

const usernameInput = document.getElementById('username');
const usernameError = document.getElementById('usernameError');

usernameInput.addEventListener('input', function() {
    if (this.value.length < 5) {
        usernameError.textContent = "Username must be at least 5 characters long";
        usernameError.style.color = "red";
    } else {
        usernameError.textContent = "";
    }
});

user が input フィールドに入力すると、イベントリスナーは username が least 5 characters long かどうかを確認します。そうでない場合は、red error message を表示します。

challenge icon

チャレンジ

簡単

すでに email 用の input フィールドと、その下に message エリアがあるページがあります。

あなたの課題:イベントリスナー内に、input の値に <strong>@</strong> 記号が含まれているかを確認する if-else statement を追加してください。

  • 含まれている場合 → message “Looks good!” を表示する
  • それ以外の場合 → message “Please enter a valid email address” を表示する

自分で試してみよう

<!DOCTYPE html>
<html>
<head>
  <title>Custom error messages</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <div class="form-container">
    <h2>Create Your Account</h2>
    <p class="subtitle">Join our newsletter for the latest updates</p>

    <form>
      <label for="email">Email Address</label>
      <input type="text" id="email" placeholder="e.g. user@example.com">
      <span id="emailError" class="message"></span>

      <button type="button">Subscribe</button>
    </form>
  </div>

  <script src="script.js"></script>
</body>
</html>
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

JavaScriptの実践のすべてのレッスン

自分で練習してみよう: Webプレイグラウンド