jQuery验证插件 – 密码检查 – 最低要求 – 正则表达式

我的密码检查器有一点问题.

有一些注册表格有一些字段.
我使用jQuery验证插件来验证用户输入.

除了密码验证,它一切正常工作:

密码应符合以下最低要求:

>最小长度:8 – >我只是使用’minlength:8′
>至少一个小写字符
>至少一位数字
>允许的字符:A-Z a-z 0-9 @ * _ – . !

目前我使用这段代码验证密码:

$.validator.addMethod("pwcheck",function(value,element) {
   return /^[A-Za-z0-9\d=!\-@._*]+$/.test(value);
});

代码适用于允许的字符,但不适用于最低要求.
我知道您可以使用例如(?=.* [a-z])作为小写的要求.但我只是不能让它工作.

如果我添加(?=.* [a-z])整个代码不再工作了.我需要知道如何正确地将代码添加到现有的代码中.

谢谢你的答案!

这是完整的代码

<script>
                $(function() {
                    $("#regform").validate({
                        rules: {
                            forename: {
                                required: true
                            },surname: {
                                required: true
                            },username: {
                                required: true
                            },password: {
                                required: true,pwcheck: true,minlength: 8
                            },password2: {
                                required: true,equalTo: "#password"
                            },mail1: {
                                required: true,email: true
                            },mail2: {
                                required: true,equalTo: "#mail1"
                            }
                        },messages: {
                            forename: {
                                required: "Vornamen angeben"
                            },surname: {
                                required: "Nachnamen angeben"
                            },username: {
                                required: "Usernamen angeben"
                            },password: {
                                required: "Passwort angeben",pwcheck: "Das Passwort entspricht nicht den Kriterien!",minlength: "Das Passwort entspricht nicht den Kriterien!"
                            },password2: {
                                required: "Passwort wiederholen",equalTo: "Die Passwörter stimmen nicht überein"
                            },mail1: {
                                required: "Mail-Adresse angeben",email: "ungültiges mail-format"
                            },mail2: {
                                required: "Mail-Adresse wiederholen",equalTo: "Die Mail-Adressen stimmen nicht überein"
                            }
                        }
                    });

                    $.validator.addMethod("pwcheck",element) {
                            return /^[A-Za-z0-9\d=!\-@._*]+$/.test(value);
                    });
                });
                </script>

解决方法

If I add (?=.*[a-z]) the whole code doesn’t work anymore.

在这里添加

/^(?=.*[a-z])[A-Za-z0-9\d=!\-@._*]+$/

但是,没有一个前瞻性就会更容易做到这一点:

$.validator.addMethod("pwcheck",function(value) {
   return /^[A-Za-z0-9\d=!\-@._*]*$/.test(value) // consists of only these
       && /[a-z]/.test(value) // has a lowercase letter
       && /\d/.test(value) // has a digit
});

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...