javascript密码强度校验代码(两种方法)


Posted in Javascript onAugust 10, 2015

先看效果图:

javascript密码强度校验代码(两种方法)

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密码强度校验代码,希望对大家有所帮助。

Javascript 相关文章推荐
JavaScript调用ajax获取文本文件内容实现代码
Mar 28 Javascript
jQuery插件datepicker 日期连续选择
Jun 12 Javascript
jquery取消事件冒泡的三种方法(推荐)
May 28 Javascript
bootstrap模态框垂直居中效果
Dec 03 Javascript
js实现复制功能(多种方法集合)
Jan 06 Javascript
vue中锚点的三种方法
Jul 06 Javascript
Angular中sweetalert弹框的基本使用教程
Jul 22 Javascript
jQuery选择器之层次选择器用法实例分析
Feb 19 jQuery
JavaScript数据结构与算法之基本排序算法定义与效率比较【冒泡、选择、插入排序】
Feb 21 Javascript
vue百度地图 + 定位的详解
May 13 Javascript
Layui 动态禁止select下拉的例子
Sep 03 Javascript
微信小程序实现可长按移动控件
Nov 01 Javascript
javascript实现数组内值索引随机化及创建随机数组的方法
Aug 10 #Javascript
jQuery解决input超多的表单提交
Aug 10 #Javascript
jQuery实现的图文高亮滚动切换特效实例
Aug 10 #Javascript
jQuery基于ajax实现带动画效果无刷新柱状图投票代码
Aug 10 #Javascript
javascript中caller和callee详解
Aug 10 #Javascript
jQuery实现购物车表单自动结算效果实例
Aug 10 #Javascript
javascript中$(function() {});写与不写有哪些区别
Aug 10 #Javascript
You might like
mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array
2007/01/15 PHP
php mysql 判断update之后是否更新了的方法
2012/01/10 PHP
PHP之预定义接口详解
2015/07/29 PHP
Zend Framework教程之Application用法实例详解
2016/03/14 PHP
PHP常见的6个错误提示及解决方法
2016/07/07 PHP
Javascript Function对象扩展之延时执行函数
2010/07/06 Javascript
使用jquery为table动态添加行的实现代码
2011/03/30 Javascript
js中的string.format函数代码
2020/08/11 Javascript
js replace正则表达式应用案例讲解
2013/01/17 Javascript
JAVA四种基本排序方法实例总结
2015/07/24 Javascript
js实现适用于素材网站的黑色多级菜单导航条效果
2015/08/24 Javascript
使用jQuery加载html页面到指定的div实现方法
2016/07/13 Javascript
jquery 动态增加,减少input表单的简单方法(必看)
2016/10/12 Javascript
使用Node.js实现简易MVC框架的方法
2017/08/07 Javascript
新手vue构建单页面应用实例代码
2017/09/18 Javascript
vue渲染时闪烁{{}}的问题及解决方法
2018/03/28 Javascript
Vue中保存数据到磁盘文件的方法
2018/09/06 Javascript
如何使用proxy实现一个简单完整的MVVM库的示例代码
2019/09/17 Javascript
vue+AI智能机器人回复功能实现
2020/07/16 Javascript
antd配置config-overrides.js文件的操作
2020/10/31 Javascript
vue登录页实现使用cookie记住7天密码功能的方法
2021/02/18 Vue.js
[37:02]OG vs INfamous 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python中decorator使用实例
2015/04/14 Python
Python中断言Assertion的一些改进方案
2016/10/27 Python
Python File readlines() 使用方法
2018/03/19 Python
python3+PyQt5使用数据库窗口视图
2018/04/24 Python
解决python彩色螺旋线绘制引发的问题
2019/11/23 Python
python爬虫可以爬什么
2020/06/16 Python
Urban Outfitters美国官网:美国生活方式品牌
2016/08/26 全球购物
美国新娘礼品店:The Paisley Box
2020/09/08 全球购物
计算机专业个人求职信范例
2013/09/23 职场文书
《灯光》教学反思
2014/02/08 职场文书
关于热爱祖国的演讲稿
2014/05/04 职场文书
设计大赛策划方案
2014/06/13 职场文书
表扬稿表扬信的格式及范文
2019/06/24 职场文书
如何理解Vue前后端数据交互与显示
2021/05/10 Vue.js