何か不足しているかどうかわかりませんが、このコードに問題があります。入力領域を空白のままにしておくと、else部分は実行する必要がありますが、そうではありません。誰かがなぜ私を説明することはできますか?あなたの文で.value
が欠落しているなぜこのコードのelse部分は実行されませんか?
<html>
<head>
<script type="text/javascript">
</script>
</head>
<body>
<p> Put your name and see what happens. </p>
<input id="nameinput">
<button onclick="myFunction()">Click To See Your Name</button>
<p id="namedemo"></p>
<script type="text/javascript">
function myFunction() {
if (document.getElementById("nameinput") != "") {
var u;
u = document.getElementById("nameinput").value;
document.getElementById("namedemo").innerHTML = "Your name is " + u;
}
else {
alert("Please fill required field");
}
}
</script>
</body>
</html>
'#nameinput'は入力要素ですが、どのように空の文字列になりますか? 'if'の上に' u'の定義を移動し、要素自体の代わりに 'u'をチェックしてください。 – Teemu
要素の内容ではなく要素を比較しているため、else文は起動しません。 – Theo