2017-02-03 84 views
0

我試圖使用jQuery驗證插件來達到以下標準來驗證我的形式:Jquery驗證插件密碼包含至少10個字符,1個數字或標點符號,1個大寫和1個小寫字母。

密碼必須:

至少8個字符長

至少包含一個大寫字母和至少一個小寫字母

至少包含一個數字或標點符號

我使用下面的jQuery插件: https://jqueryvalidation.org/

這裏我開始了一些代碼,但無法編寫完整的代碼。請幫我完成以上密碼標準。

 var form3 = $('#change_password_form'); 

     form3.validate({ 

      rules: { 
       npassword: { 
        required: true, 
        minlength: 10 
       }, 

       ncpassword: { 
        required: true, 
        equalTo:'#npassword' 

       }, 
      }, 
      submitHandler: function (form) { 

       success3.show(); 

       error3.hide(); 

       form.submit(); 
      } 

     }); 

回答

2

試試這個

添加的方法

$.validator.addMethod(
     "regex", 
     function(value, element, regexp) { 
      var re = new RegExp(regexp); 
      return this.optional(element) || re.test(value); 
     }, 
     "Please check your input." 
); 

現在你需要做驗證對任何正則表達式是這樣的:

$("#Textbox").rules("add", { regex: "((?=.*\d)(?=.*[A-Z])(?=.*\W).{8,8})" }) 

這正則表達式是

(     # Start of group 
    (?=.*\d)  # must contain at least one digit 
    (?=.*[A-Z])  # must contain at least one uppercase character 
    (?=.*\W)  # must contain at least one special symbol 
     .   #  match anything with previous condition checking 
     {8,8}  #  length at least 8 characters and also maximum of 8 
)     # End of group 
相關問題