带有jQuery验证的密码强度数据规则模式

带有jQuery验证的密码强度数据规则模式,jquery,regex,passwords,jquery-validate,Jquery,Regex,Passwords,Jquery Validate,我正在使用jQuery验证插件,我想使用数据规则模式创建一个密码强度正则表达式来验证字段,但它根本无法工作 我希望密码至少包含以下内容: 8个字符 1个大写字母 1号 到目前为止,我已经: <p class="controls"> <input data-rule-pattern="(^$)|([a-z][A-Z]{1}[0-9]{1}$)" data-msg-pattern="Password does not meet the minimum requirments."

我正在使用jQuery验证插件,我想使用
数据规则模式创建一个密码强度正则表达式来验证字段,但它根本无法工作

我希望密码至少包含以下内容:

  • 8个字符
  • 1个大写字母
  • 1号
到目前为止,我已经:

<p class="controls">
<input data-rule-pattern="(^$)|([a-z][A-Z]{1}[0-9]{1}$)" data-msg-pattern="Password does not meet the minimum requirments." id="password" type="password" data-rule-required="true" value="" />
</p>


其他简单的验证工作正常,但无法完成此验证。有人能帮我提一些想法吗?谢谢

您认为是否包括其他方法.js

因为模式规则不包括在corejquery.validate.js中

您认为是否包括其他方法.js

因为模式规则不包括在corejquery.validate.js中

您可以使用customer addMethod将正则表达式应用于元素 像这样

这是我添加正则表达式的自定义addMethod

 $.validator.addMethod("PASSWORD", function (value, element) {
                    return this.optional(element) || /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,16}$/i.test(value);
                }, "Passwords are 8-16 characters with uppercase letters, lowercase letters and at least one number."); 
这是将自定义addMethod附加到元素的规则方法

 $('input[name="password"]').rules('add', {
                    PASSWORD: true
                });
  <input id="password" type="password" class="w-input"  data-rule-required="true" name="password" placeholder="Password"  />
这是我的元素

 $('input[name="password"]').rules('add', {
                    PASSWORD: true
                });
  <input id="password" type="password" class="w-input"  data-rule-required="true" name="password" placeholder="Password"  />

可以直接将自定义方法指定给元素

<input id="password" type="password" class="w-input" data-rule-PASSWORD="true"  data-rule-required="true" name="password" placeholder="Password" data-rule-password ="true" />
Hope It Will work For You

希望它对你有用

您可以使用customer addMethod将正则表达式应用于元素 像这样

这是我添加正则表达式的自定义addMethod

 $.validator.addMethod("PASSWORD", function (value, element) {
                    return this.optional(element) || /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,16}$/i.test(value);
                }, "Passwords are 8-16 characters with uppercase letters, lowercase letters and at least one number."); 
这是将自定义addMethod附加到元素的规则方法

 $('input[name="password"]').rules('add', {
                    PASSWORD: true
                });
  <input id="password" type="password" class="w-input"  data-rule-required="true" name="password" placeholder="Password"  />
这是我的元素

 $('input[name="password"]').rules('add', {
                    PASSWORD: true
                });
  <input id="password" type="password" class="w-input"  data-rule-required="true" name="password" placeholder="Password"  />

可以直接将自定义方法指定给元素

<input id="password" type="password" class="w-input" data-rule-PASSWORD="true"  data-rule-required="true" name="password" placeholder="Password" data-rule-password ="true" />
Hope It Will work For You

希望它对你有用
(?=.[A-Z])(?=...\d)\w{8,}
类似的内容?我把“字符”解释为
\w
(?=.*[A-Z])(?=.*\d)\w{8,}
类似的东西?我将“字符”解释为
\w