テキストエリアに71文字以上を入力すると背景がピンクになり、エラーを表示するプログラムを書きました。背景色は変化するものの、エラー表示が上手く動作しません。取得部分とメッセージ表示部分をコメントアウトすると動作します。現在はコメントアウトしている状態です。
この2行がなぜ影響を与えているのかわからず頭を悩ませています。背景色を変化させ、エラーを表示するにはどう修正すればいいか教えていただけないでしょうか?
HTML
1 <body> 2 <textarea id="messageArea" name="messageArea" rows="4" cols="40" placeholder="メッセージを入力してください"></textarea> 3 <span id="showMessageLength">0/70</span><br> 4 <p class="caution"> 5 6 </p> 7 <script type="text/javascript" src="dateObject.js"></script> 8 </body>
JavaScript
1window.addEventListener("DOMContentLoaded", function () { 2 let messageArea = document.getElementById("messageArea"); 3 messageArea.addEventListener("input", function () { 4 let message = messageArea.value; 5 let msgLength = message.length; 6 let showMessageLength = document.getElementById("showMessageLength"); 7 // let cautionMsg = document.getElementByClassName("caution"); 8 showMessageLength.textContent = msgLength + "/70"; 9 10 if (msgLength > 70) { 11 // cautionMsg.textContent = "入力文字数が70文字を超えました。"; 12 messageArea.classList.add("alertBg"); 13 14 } else { 15 messageArea.classList.remove("alertBg"); 16 } 17 }); 18});
css
1.alertBg { 2 background: pink; 3}
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/09/09 07:44
2020/09/09 07:45
2020/09/09 07:47
退会済みユーザー
2020/09/10 06:29