1. ホーム
  2. javascript

[解決済み] Javascriptでテキストボックスが空かどうかをチェックする

2022-02-12 06:07:21

質問

これは私のコードです。 alert というメッセージが表示されます。

function a(id)
{
    var n=document.getElementById(id).value;
    if (n.length < 1)
    {
        window.alert("Field is blank");
        return false;
    }
}

私が得たバグは、フィールドが検証されないということです。 onChange を実行します。しかし、テキストボックスに何らかのデータを入れてから消去すると、今度は OnChange が発火し alert というメッセージが表示されます。どうすればこのバグを修正できますか?

解決方法は?

onchange は、テキストボックスの値が以前と比較して変化した場合にのみ動作するので、初めての場合は状態が変化していないので動作しません。

そのため、より良い onblur イベント、またはフォームの送信時。

function checkTextField(field) {
  document.getElementById("error").innerText =
    (field.value === "") ? "Field is empty." : "Field is filled.";
}
<input type="text" onblur="checkTextField(this);" />
<p id="error"></p>

(昔のライブデモとか)