web-dev-qa-db-ja.com

jqueryはパスワード検証を確認します

フォームの検証にjqueryを使用しています。パスワードの確認フィールドを除き、残りは十分です。同じパスワードを入力しても、同じパスワードを入力してください。は削除されません。

私のスクリプトは次のとおりです。

  <script type="text/javascript">
    $(document).ready(function() {
      $("#form1").validate({
        rules: {
          password: { 
                required: true, minlength: 5
          }, 
          c_password: { 
                required: true, equalTo: "#password", minlength: 5
          }, 
        email: {
          required: true, email: true
          },
        phone: {
          required: true, number: true, minlength: 7
          },
        url: {
          url: true
        },
        description: {
          required: true
        },
        gender: {
             required: true
          }
        },
        messages: {
         description: "Please enter a short description.",
         gender: "Please select your gender."

        }
      });
    });
     -->
  </script>

そして、フォームタグ内:

<div class="form-row"><span class="label">Password</span><input type="password" name="password" class="required" id="password" /></div>

<div class="form-row"><span class="label">Confirm Password</span><input type="password" name="c_password" id="c_password" /></div>

なにか提案を?ヘルプに感謝します。

27
Aryan G

フィールドにはIDプロパティがありません。 jQueryでは、「#password」セレクターは「値が'password'idプロパティを持つオブジェクト」を意味します

コードは次のようになります。

<input type="password" name="password" id="password" class="required"/>
18
MatuDuke
<input type="password" id="password" class="nomal required error" value="" name="cpassword">

<input type="password" equalto="#password" class="nomal required error" value="" name="cpassword">
7
Thiwanka
rules: {

閉じていません。別の}後:

messages: {
   description: "Please enter a short description.",
   gender: "Please select yor gender."
}

これは、要素IDに関する答えと同様です。

2
Craig

パスワードの入力テキストのIDが「password」であることを確認してください

2
Dalen

同じページにタグid='password'を含む他の入力がないことを確認してください。

1
Pat

パスワード入力にcamelCase IDを使用すると、いくつかの問題が発生しました。最終的に、異なる「名前」と「ID」で動作するようになりました。

<input type="password" id="pass" placeholder="New password" name="newPassword">
<input type="password" id="pass2" placeholder="New password" name="repeatNewPassword">
<input type="email" id="inputNewEmail" name="newEmail" placeholder="New email">
<input type="email" id="repeatNewEmail" name="repeatNewEmail" placeholder="New email>

次に、JSで:

rules: {
            newPassword: {
                minlength: 6
            },
            repeatNewPassword: {
                minlength: 6,
                equalTo: "#pass"
            },
            newEmail: { email: true},
            repeatNewEmail: {email: true, equalTo: '#inputNewEmail'},
}

そのため、「名前」で入力フィールドを参照しますが、「id」を使用してequalToの依存関係を定義します。キャメルケースの問題についてはわかりませんが、電子メールの入力は機能していましたが、パスワード入力とまったく同じ命名法は機能しませんでした、私の経験によると

1
sgimeno
if($("#newpassword").val()!== ($("#conformpassword").val())){
    $('#newpasswordId').html('<font color="red">Your password does not match</font>');
    $("#newpassword").val('');
    $("#conformpassword").val('');
    $('#newpassword').css("border", "#FF0000 solid 1px")
    $('#conformpassword').css("border", "#FF0000 solid 1px")
    $("#newpassword").focus();

    return false;
}
0
ranjan kumar