2017-01-10 7 views
1

何か不足しているかどうかわかりませんが、このコードに問題があります。入力領域を空白のままにしておくと、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> 
+0

'#nameinput'は入力要素ですが、どのように空の文字列になりますか? 'if'の上に' u'の定義を移動し、要素自体の代わりに 'u'をチェックしてください。 – Teemu

+0

要素の内容ではなく要素を比較しているため、else文は起動しません。 – Theo

答えて

3

、それはここで

if(document.getElementById("nameinput").value != ""){ 

あるべき作業DEMOです:https://jsfiddle.net/ku7ubhnL/

・ホープ、このことができます!

+0

ああ!ありがとう!私は夢中になっていた! –

+0

あなたはそれを受け入れることができますか? :) –

+0

ええ、確かにできる –

関連する問題