在javascript中验证密码

时间:2013-12-11 04:35:54

标签: javascript passwords

我要验证密码。密码必须为8个字符(min = 8 char,max = 10 char)。并且应包含至少1个大写字符,1个小写字符,1个特殊字符和1个数字。直到现在我所做的就是......

['validate-password', 'Password must contain at least 1 uppercase character, 1 lowercase character, 1 special character and 1 number (Min. length = 8 & Max. length = 10)', function(v) {
                var pass=v.strip(); 
                if(pass.length <11 && pass.length>7)
                    return Validation.get('IsEmpty').test(v) || /(?=.*\d)(?=.*[a-z])(?=.*[A-Z])/.test(v) || /^\s|\s$/.test(pass)

            }],

此代码工作正常,但是当我在密码开头添加空格时,例如密码= 2空格+ Aaaa#7然后它显示警告消息,但是当我在末尾再添加2个字符时,如密码= 2空格+ Aaaa#7 + 12,那么它正在接受。我想要的是在字符串的开头和结尾删除空格......我怎么能这样做?

3 个答案:

答案 0 :(得分:1)

如果您使用的是jQuery,则可以使用

$.trim(str)

修剪两边的空白,否则你可以使用:

str.replace(/^\s+|\s+$/g, '');

删除任意一侧的空格。

答案 1 :(得分:1)

使用$.trim(str)删除字符串OR的开头和结尾处的空格 yourString.replace(/\s/g,'');删除字符串中的所有空格。

答案 2 :(得分:0)

空格可以容器\ t \ t,\ r \ n,\ s.Here是jQuery中用于修剪空格的代码,它在任何条件下都能正常工作。

whitespace = "[\\x20\\t\\r\\n\\f]";
rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" )

str.replace(rtrim , '');