次の関数のif
ステートメントは、テキスト フィールドとパスワード フィールドの両方に入力しても実行されません。関数はステートメントの前では正常に機能しますが、alert
ifステートメントの後の関数は機能しません。if
alert
関数は次のとおりです。
<script type="text/javascript">
function CheckForMissingFields() {
alert("before if statement");
if(document.getElementById("username").length != 0 && document.getElementById("password").length != 0) {
document.getElementByName("SignInButton").disabled = 'false';
alert("inside if statement");
}
alert("outside if statement");
}
最初は、ボタンの状態SignIn
は無効になっています。両方のフィールドが完了したら、それを有効にしようとしています。if
ステートメントが機能しない理由は何ですか?
以下は、対応する HTML ログイン スニペットです。
<ul> <form method="post" action="#">
<li> <input type="text" id="username" value="Username or Email" size="25" name="UserID" onfocus="emptyTextField()" /> </li>
<li> <input type="password" id="password" value="password" size="25" name="UserPassword" onfocus="emptyPasswordField()" />
<center><input type="submit" value="sign-in" style="font-size:20px" name="SignInButton" disabled="true"/> </center>
</li>
</form>
</ul>