初学js正则表达式之密码强度验证

http://www.2cto.com/kf/201209/158346.html

Html:

       <tr>
           <td ><label >密码强度:</label></td>     
           <td >
               <table class="PWDStrengthNormal">
                   <tr>
                       <td id='PStrengl'> </td>
                       <td id='PStrengm'> </td>
                       <td id='PStrengs'> </td>
                   </tr>
               </table>
           </td>     
       </tr>

JavaScript:

        function isDigit(s) {
            var pattern_d = /^\d+$/;            //全数字 
            var pattern_s = /^[A-Za-z]+$/       //全字符 
            var pattern_w = /^\w+$/;            //数字或者字符 
            var pattern_W = /^\W+$/             //全非数字也非字符 
            var pattern_r = /^\w+\W+[\w\W]*\w+$/    //以字母或者数字开头结尾的字符串 
            var pattern_o = /((\d+[a-zA-Z]+[-`=\\\[\];',./~!@#$%^&*()_+|{}:\"<>?]+)|(\d+[-`=\\\[\];',./~!@#$%^&*()_+|{}:\"<>?]+[a-zA-Z]+)|([a-zA-Z]+\d+[-`=\\\[\];',./~!@#$%^&*()_+|{}:\"<>?]+)|([a-zA-Z]+[-`=\\\[\];',./~!@#$%^&*()_+|{}:\"<>?]+\d+)|([-`=\\\[\];',./~!@#$%^&*()_+|{}:\"<>?]+\d+[a-zA-Z]+)|([-`=\\\[\];',./~!@#$%^&*()_+|{}:\"<>?]+[a-zA-Z]+\d+))/   //非字母非数字之外的字符
            var html = '';
            var x = 0;
            var y = 0;
            var u = 0;
            if (s.length >= 8) {
                u = 2;
            } else if (s.length>=6) {
                u = 1;
            } 
            //$('#user').html(s);
            if (pattern_W.exec(s)) {
                //html += '非数字也非字符<br />';
                x = 0;
                y = 0;
            }
            if (pattern_w.exec(s)) {
                //html += '数字或者字符<br />';
                y = 1;
            }
            if (pattern_d.exec(s)) {
                //html += '全数字<br />';
                x = 1;
                y = 0;
            }
            if (pattern_s.exec(s)) {
                //html += '全字符<br />';
                x = 2;
                y = 0;
            }
            if (pattern_r.exec(s)) {
                //html += '以字母或者数字开头结尾的字符串<br />';
                x = 3;
                y = 2;
            }
            if (pattern_o.exec(s)&&u==2) {
                //html += '以字母或者数字开头结尾的字符串<br />';
                x = 3;
                y = 2;
            }

            if (u==0) {
                //html += '密码格式错误<br />';
                //alert('密码格式错误');

                $('#PStrengl').removeClass().addClass('PWDStrengthNormal').text('');

                $('#PStrengm').removeClass().addClass('PWDStrengthNormal').text('');
                $('#PStrengs').removeClass().addClass('PWDStrengthNormal').text('');

                return;
            }
            if ((x > 0 && y === 0)||u==1) {
                //html += '安全级别《低》<br />';
                $('#PStrengl').removeClass().addClass('PWDStrengthLittle').text('');
                $('#PStrengm').removeClass().addClass('PWDStrengthLittle').text('');
                $('#PStrengs').removeClass().addClass('PWDStrengthLittle').text('');
                return;
            }
            if ((x === 0 && y === 1)&&u==2) {
                //html += '安全级别《中》<br />';
                $('#PStrengl').removeClass().addClass('PWDStrengMedium').text('');;
                $('#PStrengm').removeClass().addClass('PWDStrengMedium').text('');;
                $('#PStrengs').removeClass().addClass('PWDStrengMedium').text('');
                return;
            }
            if (y === 2) {
                //html += '安全级别《高》<br />';
                $('#PStrengl').removeClass().addClass('PWDStrengStrong').text('');;

                $('#PStrengm').removeClass().addClass('PWDStrengStrong').text('');;

                $('#PStrengs').removeClass().addClass('PWDStrengStrong').text('');;

                return;

            }
            //html += x + '<br />' + y;
            //$('#password').html(html);
        }
        $(function () {
            $('#<%=txtTwoPass.ClientID%>').keyup(function () {
                var val = $(this).val();
                isDigit(val);
            });
Css:

.PWDStrengthLittle {
    width: 150px;
    background-color: #CC0000;
}
.PWDStrengMedium {
    width: 150px;
    background-color: #FF9933;
}
.PWDStrengStrong {
    width: 150px;
    background-color: #00CC00;
}
.PWDStrengthNormal {
    width: 150px;

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值