javascript - 我的 jquery 验证添加方法密码规则出现问题

标签 javascript jquery html jquery-validate

我想做的是在jquery验证中做一个密码规则方法来检查用户是否符合要求。

用户应输入至少 10 个数字、字母和标点符号(如(& 和 !))的组合

我的问题是即使用户只输入字母和数字而没有标点符号,密码仍然有效。

password: {
                minlength:10,
                pwcheck: true,
                required: true
            },

检查密码方法

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

最佳答案

您的正则表达式应如下所示(在本例中为 10 到 20 个字符)

/^(?=.*[!@#$%^&*])[a-zA-Z0-9!@#$%^&*]{10,20}$/

它使用正向先行断言 - (?=.*[!@#$%^&*]) - 确保字符串至少具有这些特殊字符之一。

关于javascript - 我的 jquery 验证添加方法密码规则出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24877485/

相关文章:

javascript - AngularJS:指令没有从范围中获取 Controller 的变量

javascript - .deny Meteor 使用..无法让它工作

javascript - Jquery模态自动关闭

javascript - 当用户退出页面时处理文件?

php - 从多个表获取信息到一个 div(HTML、PHP 和 MySQL)

JavaScript 全局鼠标钩子(Hook)

javascript - 在 `bundle.js` 创建 `cachebust.resources()` 之后如何从 html 引用 `bundle.a3503174.js` ?

Javascript:变量作用域和匿名函数的问题

javascript - 一旦我刷新通过表单获取数据的页面,一切都会消失

JavaScript/jQuery 签名板