先看效果图:
javascript密码强度校验代码,具体实现思路不多说了,请看下面代码和demo。
第一种方法:
/* *密码安全程度 *return :全部为字母或者数字,或者密码长度小于 *return : 字母数字组成,或者字母特殊字符,或者数字和特殊字符 *return : 字母和数字和特殊字符 */ String.prototype.passwordStrength=function(){ if(this.length> && this.length<=) return ; var n = (this.search(/[a-zA-Z]/) != -) ? : , n = (this.search(/[-]/) != -) ? : , n =(this.search(/[\\~\\`\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\_\\+\\-\\=\\[\\]|{\\}\\;\\\'\\:\\\"\\,\\.\\/\\<\\>\\?]{,}/) != -) ? : ; return n+n+n; }
demo
<!doctype html> <html> <head> <meta charset=\"utf-\"> <title>js密码强度</title> <style type=\"text/css\"> .pw_letter{ margin-top:px; font-size: px; } .pw_letter label{float: left; margin-right:px; cursor: default; font-size: px; line-height: px;;} .pw_letter span{ float: left; display:inline-block; width:px; height:px; line-height:px; text-align:center; color:#FFF; background-color:#ccc; border-left: px solid #FFF;} .pw_letter span.pw_strength_color{ background-color:green;} </style> </head> <body> <input id=\"password\" type=\"password\" name=\"password\" placeholder=\"密码\" onKeyUp=\"setPasswordStrength(this.value.trim())\"> <div class=\"pw_letter\"><label>安全程度</label> <span class=\"strength\">弱</span> <span class=\"strength\">中</span> <span class=\"strength\">强</span> </div> <script type=\"text/javascript\"> /* *密码安全程度 *return :全部为字母或者数字,或者密码长度小于 *return : 字母数字组成,或者字母特殊字符,或者数字和特殊字符 *return : 字母和数字和特殊字符 */ String.prototype.passwordStrength=function(){ if(this.length> && this.length<=) return ; var n = (this.search(/[a-zA-Z]/) != -) ? : , n = (this.search(/[-]/) != -) ? : , n =(this.search(/[\\~\\`\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\_\\+\\-\\=\\[\\]|{\\}\\;\\\'\\:\\\"\\,\\.\\/\\<\\>\\?]{,}/) != -) ? : ; return n+n+n; } String.prototype.trim = String.prototype.trim || function(){ return this.replace(/^\\s+|\\s+$/g,\"\"); } function setPasswordStrength(pwd){ var strength_span = document.getElementsByClassName(\"strength\"); for(var i=; i<strength_span.length; i++){ strength_span.item(i).className=\"strength\"; } for(var i=; i<pwd.passwordStrength(); i++){ document.getElementsByClassName(\"strength\").item(i).className=\"strength pw_strength_color\"; } } </script> </body>
第二种方法:
javascript代码如下:
<script> function AuthPasswd(string) { if(string.length >=6) { if(/[a-zA-Z]+/.test(string) && /[0-9]+/.test(string) && /\\W+\\D+/.test(string)) { noticeAssign(1); }else if(/[a-zA-Z]+/.test(string) || /[0-9]+/.test(string) || /\\W+\\D+/.test(string)) { if(/[a-zA-Z]+/.test(string) && /[0-9]+/.test(string)) { noticeAssign(-1); }else if(/\\[a-zA-Z]+/.test(string) && /\\W+\\D+/.test(string)) { noticeAssign(-1); }else if(/[0-9]+/.test(string) && /\\W+\\D+/.test(string)) { noticeAssign(-1); }else{ noticeAssign(0); } } }else{ noticeAssign(null); } } function noticeAssign(num) { if(num == 1) { $(\'#weak\').css({backgroundColor:\'#009900\'}); $(\'#middle\').css({backgroundColor:\'#009900\'}); $(\'#strength\').css({backgroundColor:\'#009900\'}); $(\'#strength\').html(\'很强\'); $(\'#middle\').html(\'\'); $(\'#weak\').html(\'\'); }else if(num == -1){ $(\'#weak\').css({backgroundColor:\'#ffcc33\'}); $(\'#middle\').css({backgroundColor:\'#ffcc33\'}); $(\'#strength\').css({backgroundColor:\'\'}); $(\'#weak\').html(\'\'); $(\'#middle\').html(\'中\'); $(\'#strength\').html(\'\'); }else if(num ==0) { $(\'#weak\').css({backgroundColor:\'#dd0000\'}); $(\'#middle\').css({backgroundColor:\'\'}); $(\'#strength\').css({backgroundColor:\'\'}); $(\'#weak\').html(\'弱\'); $(\'#middle\').html(\'\'); $(\'#strength\').html(\'\'); }else{ $(\'#weak\').html(\' \'); $(\'#middle\').html(\' \'); $(\'#strength\').html(\' \'); $(\'#weak\').css({backgroundColor:\'\'}); $(\'#middle\').css({backgroundColor:\'\'}); $(\'#strength\').css({backgroundColor:\'\'}); } } </script>
以上通过两种方法介绍了javascript密码强度校验代码,希望对大家有所帮助。
本文地址:https://www.stayed.cn/item/15948
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我