<html>
<head>

<meta http-equiv="content-type" content="text/html"; charset="utf-8"/>

<script src="./js/jquery-1.8.0.min.js"></script>

<script type="text/javascript">

//CharMode函数  

//测试某个字符是属于哪一类.  

function CharMode(iN){  

if (iN>=48 && iN <=57) //数字  

return 1;  

if (iN>=65 && iN <=90) //大写字母  

return 2;  

if (iN>=97 && iN <=122) //小写  

return 4;  

else  

return 8; //特殊字符  

}

//bitTotal函数  

//计算出当前密码当中一共有多少种模式  

function bitTotal(num){  

modes=0;  

for (i=0;i<4;i++){  

if (num & 1) modes++;  

num>>>=1;  

}  

return modes;  

}

//checkStrong函数  

//返回密码的强度级别

function checkStrong(sPW){  

if (sPW.length<=4)  

return 0; //密码太短  

Modes=0;  

for (i=0;i<sPW.length;i++){  

//测试每一个字符的类别并统计一共有多少种模式.  

Modes|=CharMode(sPW.charCodeAt(i));  

}

return bitTotal(Modes);

}

//pwStrength函数  

//当用户放开键盘或密码输入框失去焦点时,根据不同的级别显示不同的颜色

function pwStrength(pwd){  

O_color="#eeeeee";  

L_color="#FF0000";  

M_color="#FF9900";  

H_color="#33CC00";  

if (pwd==null||pwd==''){  

Lcolor=Mcolor=Hcolor=O_color;  

}  

else{  

S_level=checkStrong(pwd);  

switch(S_level) {  

case 0:  

Lcolor=Mcolor=Hcolor=O_color;  

case 1:  

Lcolor=L_color;  

Mcolor=Hcolor=O_color;  

break;  

case 2:  

Lcolor=Mcolor=M_color;  

Hcolor=O_color;  

break;  

default:  

Lcolor=Mcolor=Hcolor=H_color;  

}  

}

document.getElementById("strength_L").style.background=Lcolor;  

document.getElementById("strength_M").style.background=Mcolor;  

document.getElementById("strength_H").style.background=Hcolor;  

return;  

}   

</script>

</head>

<body>

<div>

<form name="form1" action="" >  

输入密码:<input type="password" size="15" onKeyUp="pwStrength(this.value)" onBlur="pwStrength(this.value)">  

<br/>密码强度:  

<table width="217" border="1" cellspacing="0" cellpadding="1" bordercolor="#cccccc" height="23" style='display:inline'>  

<tr align="center" bgcolor="#eeeeee">

<td width="33%" id="strength_L">弱</td>  

<td width="33%" id="strength_M">中</td>  

<td width="33%" id="strength_H">强</td>  

</tr>  

</table>

</form>

</div>

</body>

</html>

js实现密码强度验证的更多相关文章

  1. 这篇文章主要为大家详细介绍了jQuery密码强度验证控件使用详解的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    本文实例为大家分享了jQuery密码强度验证控件,供大家参考,具体内容如下 <html>   <head>     <meta http-equiv="Cont ...

  2. 正则表达式之js检验密码强度

    最近一直在做通行证项目,里面的注册模块中输入密码需要显示密码强度(低中高).今天就把做的效果给大家分享下,代码没有网上搜索的那么复杂,能够满足一般的需求. html 代码如下: <!DOCTYP ...

  3. MySQL密码强度验证修改

    MySQL5.6.6版本之后增加了密码强度验证插件validate_password,相关参数设置的较为严格. 影响的语句和函数有:create user,grant,set password,pas ...

  4. js判断密码强度

    html代码: <form name="form1" action=""> 密码:<input type="password&quo ...

  5. js 检验密码强度

    html 代码如下: <!DOCTYPE HTML> <html lang="en"> <head> <meta charset=&quo ...

  6. 【javascript】js 检验密码强度

    最近一直在做通行证项目,里面的注册模块中输入密码需要显示密码强度(低中高).今天就把做的效果给大家分享下,代码没有网上搜索的那么复杂,能够满足一般的需求. html 代码如下: <!DOCTYP ...

  7. js实现密码强度

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  8. javascript密码强度验证!

    //CharMode函数 //测试某个字符是属于哪一类 function CharMode(iN) { if (iN>=48 && iN <=57) //数字 return ...

  9. Js判断密码强度并显示提示信息

    用javascipt实现的Ajax判断密码强弱的功能,大多数有用户注册功能的网站,都会有这么一个功能,作为WEB程序员,应该会写这种小模块哦,不懂的就看下这个例子,觉得挺简单,当初帮助了不少人学会了密 ...

随机推荐

  1. 【Eclipse】Failed to load the JNI shared library

    这是因为JDK配置错误所导致的现象. 一般说来,新购笔记本会预装64位的windows系统,而在网上下载软件时,32位会优先出现在页面中(现在来说是这个情况,但我认为未来64位会越来越普及). 如果你 ...

  2. 如何设置ssh安全只允许用户从指定的IP登陆

    原文链接: 如何设置ssh安全只允许用户从指定的IP登陆 由于开发上传文件需要  在服务器上开启  允许用户名和密码ssh登录.这样不太安全.百度后参考文章现在ssh用户名和密码登录的ip. 登录服务 ...

  3. Net FLow Template

    EK  Template : bool bfs(int src, int des){ memset(pre, -, sizeof(pre)); while(!que.empty()) que.pop( ...

  4. ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解

    原文 ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 ...

  5. 基于visual Studio2013解决C语言竞赛题之0422牛顿迭代法

      题目

  6. SOA,不看你永远不知道的事

    你买不来SOA,只能设计自己的SOA. SOA不是新东西 SOA没有引入新概念,它是个把现有概念和实践放到一起,用于特定需求集的范式.你甚至可以说SOA别的什么都 不是,就是将实用主义和头脑风暴运用到 ...

  7. [转]使用xftp连接centos6.5

    首先要在windows上安装xftp软件,这个是傻瓜式操作就不说了 安装完成之后,在centos上查看是否装了xftpd服务,[root@centos Desktop]# rpm -qa | grep ...

  8. JVM --需要知道的一些术语

    1. Java堆中各代分布: Young:主要是用来存放新生的对象. Old:主要存放应用程序中生命周期长的内存对象. Permanent:是指内存的永久保存区域,主要存放Class和Meta的信息, ...

  9. Android移动view动画问题

    http://www.cnblogs.com/eoiioe/archive/2012/08/29/2662546.html Android写动画效果不是一般的麻烦,网上找了好久,终于解决了动画的问题, ...

  10. 基于visual Studio2013解决算法导论之010快排中应用插入排序

     题目 快排中引用插入排序 解决代码及点评 #include <stdio.h> #include <stdlib.h> #include <malloc.h> ...