sourcetip

jQuery Validate로 암호 확인

fileupload 2023. 10. 5. 23:29
반응형

jQuery Validate로 암호 확인

jQuery validate 플러그인을 사용하여 비밀번호 입력을 확인하려고 합니다.

하지만 저는 그것이 필수 분야가 아니길 바랍니다.

사용자가 비밀번호를 변경하려면 확인해야 합니다.

그렇지 않은 경우 두 필드 모두 유효성 검사를 수행하지 않습니다.

jQuery('.validatedForm').validate({
    rules: {
        password: {
            required: true,
            minlength: 5
        },
        password_confirm: {
            required: true,
            minlength: 5,
            equalTo: "#password"
        }
    }
}); 

이것은 완벽하게 작동하지만, 두 분야가 모두 필요합니다.

예를 들어 이메일이나 사용자 이름을 변경하고 암호를 내버려 두려는 경우를 대비하여 이 옵션을 사용하고 싶습니다.

제거합니다. required: true규칙.

데모: Fiddle

jQuery('.validatedForm').validate({
    rules: {
        password: {
            minlength: 5,
        },
        password_confirm: {
            minlength: 5,
            equalTo: "#password"
        }
    }
});

다른 사람들을 돕기위해 잠깐 차를 몰아서...특히 (2년이나 됐으니) 최신 버전으로..

JS에 정의된 일부 정적 필드 대신 사용할 수 있습니다.data-rule-*특성.기본 제공 규칙과 사용자 지정 규칙을 사용할 수 있습니다.

기본 제공 규칙은 http://jqueryvalidation.org/documentation/ #link-list of-built-in-validation- methods를 참조하십시오.

예:

<p><label>Email: <input type="text" name="email" id="email" data-rule-email="true" required></label></p>
<p><label>Confirm Email: <input type="text" name="email" id="email_confirm" data-rule-email="true" data-rule-equalTo="#email" required></label></p>

참고.data-rule-*특성.

id 값과 name 값이 다른 경우 작동합니다.

<input type="password" class="form-control"name="password" id="mainpassword">
password: {     required: true,     } , 
cpassword: {required: true, equalTo: '#mainpassword' },
jQuery('.validatedForm').validate({
    rules: {
        password: {
            minlength: 5
        },
        password_confirm: {
            minlength: 5,
            equalTo: '[name="password"]'
        }
    }
});

일반적으로 사용하지 않습니다.id="password"이것처럼.그래서 사용할 수 있습니다.[name="password"]대신에"#password"

Play Framework에서 구현하고 있는데, 저에게는 다음과 같이 작동했습니다.

  1. ID 입력 Password1에 대한 입력 태그에 data-rule-equalTo를 사용했습니다.my modal의 사용자 양식 코드 섹션:
<div class="form-group">
    <label for="pass1">@Messages("authentication.password")</label>
    <input class="form-control required" id="inputPassword1" placeholder="@Messages("authentication.password")" type="password" name="password" maxlength=10 minlength=5>
</div>
<div class="form-group">
    <label for="pass2">@Messages("authentication.password2")</label>
    <input class="form-control required" data-rule-equalTo="#inputPassword1" id="inputPassword2" placeholder="@Messages("authentication.password")" type="password" name="password2">
</div>
  1. 모달 내에서 검증기를 사용했기 때문에
$(document).on("click", ".createUserModal", function() {
    $(this).find('#userform').validate({
        rules: {
            firstName: "required",
            lastName: "required",
            nationalId: {
                required: true,
                digits: true
            },
            email: {
                required: true,
                email: true
            },
            optradio: "required",
            password: {
                required: true,
                minlength: 5
            },
            password2: {
                required: true
            }
        },
        highlight: function(element) {
            $(element).parent().addClass('error')
        },
        unhighlight: function(element) {
            $(element).parent().removeClass('error')
        },
        onsubmit: true
    });
});

누군가에게 도움이 되길 바랍니다 :).

<script>
   
     $(document).ready(function(){            
   
     });

     function login() {
        
         var password = $("#psw").val()
         var password1 = $("#psw1").val()
         var pswlen = password.length;
         if (pswlen < 8) {
             alert('minmum  8 characters needed')
         }
         else {

            if (password == password1) {
                 alert('continue');
                 window.location.replace("http://stackoverflow.com");
             }
             else {
                 alert('failed');
             }

         }

     }
    
</script>

언급URL : https://stackoverflow.com/questions/14703374/confirm-password-with-jquery-validate

반응형