2.成本中心的 查询 编辑 增加
3.后台的角色与权限控制 查询 编辑 增加
4.城市控件
5.oracle数据库 PL/SQL 数据操作
登录 相关功能点:
用户名、密码、记住密码、忘记密码、类型、验证码、下次自动登录、登录按钮、取消按钮
版权、注册、天蓝色基调、居中、左右、上下、重置、帮助、英文界面、前台、后台
使用以下账号直接登录(QQ、微博、微信、淘宝、支付宝等)管理用户、匿名用户、会员登录
注销、认证方式、头像、小键盘输入、拖拽登入、刷新输入、获取动态验证码、系统设置、刷新
版本升级、logo、语言、主题、验证码 看不清换一张、十天内免登录、与微信好友玩、与QQ好友玩、已阅读并同意<<用户协议>>、游戏、办公、选区、cookie、各行各业、上次登录、验证码类型:静态 带背景静态 含算式的 动态手机号、防暴力破解输入出错5次 账号被锁定、密码js中传值MD5加密
零碎知识点
1、去空格
trim()函数,replace()函数,split("").join("")函数
2、清空
reset()函数,关键字 reset换个函数名
3、鼠标移入移出
mouseenter()、mouseleave()
$(this).find(div).stop(false,true).slidedown();
$(this).find(div).stoop(false,true).hide();
4.密码的控制
不能全为数字,全英
插件 js文件passwordStrength.js
(function(){ if(!window['EBWF']){ window['EBWF'] = {}; } function passwordStrength(password){ // Private properties var defaultLength = 8; var owner = this; // Private method function initCheck(password){ if(!password||password.length <8){ throw new Error(emptyandlength+defaultLength); } } function min(a,b,c){ if(a>b){ if(b>c){ return c; }else{ return b; } }else{ if(a>c){ return c; }else{ return a; } } } function getDistance(a, b){ var aL = a.length; var bL = b.length; var distance = new Array(aL+1); for(var i = 0; i <= aL; i++){ distance[i] = new Array(bL+1); } for(var i = 0; i <= aL; i++){ distance[i][0]=i; } for(var j=0;j<=bL;j++){ distance[0][j] =j; } for(var i =1 ; i <= aL;i++){ for(var j=1;j<=bL;j++){ var ac = a.charAt(i-1); var bc = b.charAt(j-1); if(ac==bc){ distance[i][j]= distance[i-1][j-1]; }else{ var v1 = distance[i][j-1]; var v2 = distance[i-1][j-1]; var v3 = distance[i-1][j]; distance[i][j]= min(v1,v2,v3)+1; } } } return distance[aL][bL]; } initCheck(password); this.password = password; // Priviledged method (still public) this.setPassword = function(password){ initCheck(password); this.password = password; }; this.isSimilar=function(target,limitStep){ var i = getDistance(target,this.password); if(i<=limitStep){ return true; }else{ return false; } }; } passwordStrength.prototype.equalsIgnoreCase = function(target){ return this.password.toUpperCase()==target.toUpperCase(); }; passwordStrength.prototype.evaluateLength = function(min, max){ if(this.password.length< min||this.password.length>max){ return false; }else{ return true; } }; passwordStrength.prototype.atLeastLength = function(length){ if(this.password.length < length){ return false; }else{ return true; } }; passwordStrength.prototype.isAllCharacters= function(){ var allCharacters =/^([a-zA-Z])+$/; if(allCharacters.test(this.password)){ return true; }else{ return false; } }; passwordStrength.prototype.isAllLowerCharacters= function(){ var allLowerCharacters =/^([a-z])+$/; if(allLowerCharacters.test(this.password)){ return true; }else{ return false; } }; passwordStrength.prototype.isAllUpperCharacters= function(){ var allUpperCharacters =/^([A-Z])+$/; if(allUpperCharacters.test(this.password)){ return true; }else{ return false; } }; passwordStrength.prototype.isAllDigits= function(){ var allDigits =/^([0-9])+$/; if(allDigits.test(this.password)){ return true; }else{ return false; } }; passwordStrength.prototype.hasThreeConsecutiveSame= function(){ var length = this.password.length; for(var i=0;i<length-2;){ var c1= this.password.charAt(i); var c2= this.password.charAt(i+1); var c3= this.password.charAt(i+2); if(c3!=c2){ i=i+2; }else if(c1!=c2){ i=i+1; }else{ return true; } } return false; }; passwordStrength.prototype.hasSpecialCharacter= function(){ var length = this.password.length; //Character a = '0'; for(var i=0; i< length; i++){ var c = this.password.charAt(i); var rv = ((c-'A')>-1&&(c-'z')<1)||((c-'0')>-1 && (c-'9')<1); if(!rv){ return true; } } return false; }; passwordStrength.prototype.hasThreeConsecutiveValue= function(){ var length = this.password.length; for(var i=0;i<length-2;){ var c2= this.password.charAt(i+1); if((c2>'0'&&c2<'9')||(c2>'a'&&c2<'z')||(c2>'A'&&c2<'Z')){ var c1= this.password.charAt(i); var c3= this.password.charAt(i+2); if((c2*2 == c1+c3)&&(c2!=c1)){ return true; }else if((c2==c3-1)||(c2==c3+1)){ i=i+1; }else{ i=i+1; } }else{ i = i+2; } } return false; }; passwordStrength.prototype.basicEvaluate= function(length){ if(!this.atLeastLength(length)){ return false; }else if(this.isAllCharacters()){ return false; }else if(this.isAllDigits()){ return false; }else if(this.hasThreeConsecutiveSame()){ return false; }else{ return true; } }; window['EBWF']['passwordStrength'] = passwordStrength; })();
*****************jsp 页面中的设置************************************
/**
* 密码校验
*
*/
function resetPwdCheck() { var new_pwd = jQuery.trim(jQuery("#new_pwd").val()); var confim_pwd = jQuery.trim(jQuery("#confim_pwd").val()); if(new_pwd == ""){ alert(please_fillin_password); /*"请填写密码"*/ return false; } if (confim_pwd == "") { alert(please_confirm_password); /*"请确认密码"*/ return false; } if (new_pwd != confim_pwd) { alert(inputpassword_consistent); /*"两次填写的密码不一致"*/ return false; } if(new_pwd != "" && validateCharLength(new_pwd) > 50){ alert(newpassword_toolong); /*"新密码过长"*/ return false; } //管理员密码复杂度校验 var passwordStrengthConstructor = window['EBWF']['passwordStrength']; try{ var password = new passwordStrengthConstructor(new_pwd); if (password.isAllDigits()==true){ alert(password_cannot_numbers); /*"密码不能全部为数字"*/ return false; } if (password.isAllCharacters()==true){ alert(password_cannotallletter); /*"密码不能全部为字母"*/ return false; } }catch(e){ alert(e.message); return false; } return true; }