0

ユーザーが自分のプロファイルにログインしようとして、ユーザー名とパスワードを入力するログイン フォームがあります。サーバー側の処理を開始する前に、両方のフィールドが入力されていることを動的に確認したいと考えています。


<form id="form" method="post" action="student.jsp">

          <label><strong>Username :</strong><br/><br/>
          <input type="text" value="" name="username" id="idusername">
        </label><br/><br/>

          <label><strong>Password :</strong><br/><br/>
          <input type="text" value="" name="password" id="idpassword">
            </label><br/><br/><br/>

          <input id="minibutton" name="send" type="submit" value="Login" />
        </form>

ユーザー名が空白のままでログインしようとするたびに、正しく検証して警告するjavascriptを使用しています。ただし、パスワードフィールドではそうではなく、空白のままにしておくことができます.


$(document).ready(function(){
//global vars
var form = $("#form");
var username= $("#idusername");
var password = $("idpassword");

//On Submitting
form.submit(function(){
    if(username.val().length==0 || password.val().length==0){
                    alert('Please enter the username');
        return false;
                    }
    else
    {
                if(password.val().length==0)
                    {
                        alert('Please enter the password');
                        return false;
                    }

                 else   
                    return true;
    }
});
});

私はJavaScriptが苦手ですが、動的検証に使用する必要があります。パスワード フィールドの確認でエラーが発生したことを指摘してください。

4

3 に答える 3

6

不足しているハッシュ記号:

var password = $("idpassword");

次のようにする必要があります。

var password = $("#idpassword");
于 2012-06-24T19:41:35.137 に答える
4

var password = $("idpassword");に変更var password = $("#idpassword");

于 2012-06-24T19:41:59.943 に答える
1

あなたのロジックでも:

if(username.val().length==0 || password.val().length==0){
    alert('Please enter the username');
    return false;
}
else{
    if(password.val().length==0)
    {
        alert('Please enter the password');
        return false;
    }
    else   
        return true;
}

ユーザー名またはパスワードのいずれかが空の場合、if 句と一致するため、常に「ユーザー名を入力してください」と表示されます。

の場合は 2 に変更する必要があります

if(username.val().length==0){
    alert('Please enter the username');
    return false;
}
if(password.val().length==0){
    alert('Please enter the password');
    return false;
}
return true;

そのようにして、ユーザー名が入力されているかどうかを確認し、パスワードが入力されている場合、両方が入力されている場合は true を返し、一方が空の場合は、空のフラグを立てて false を返します。

お役に立てれば

于 2012-06-24T19:46:25.160 に答える