JS密码校验规则前台验证(不能连续字符(如123、abc)连续3位或3位以上)(不能相同字符(如111、aaa)连续3位或3位以上)
- 密码必须为8到16位且必须包含数字和字母
- 密码必须包含特殊字符【_&#%】
- 不能连续字符(如123、abc)连续3位或3位以上
- 不能相同字符(如111、aaa)连续3位或3位以上
/** * 外层密码修改 */ (function(){ var modifyPassword = {};//------这个可以自己去修改--不同的页面取名不一样 /** * 进入页面后需要初始化的事件 */ modifyPassword.initEvent = function(){ //获取传递的参数 var userId = getQueryString("user_id"); $("#user_id").val(userId); }; do_submit = function(){ //序列话数据 var param = $('#modifPwd').serializeObject(); var user_id =($("#user_id").val()).trim(); var login_passwd_old = ($("#login_passwd_old").val()).trim(); var login_passwd_new = ($("#login_passwd_new").val()).trim(); var login_passwd_new_re = ($("#login_passwd_new_re").val()).trim(); //密码必须包含数字和字母 //密码长度8到16位 var regex = /(?=.*[0-9])(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9]).{8,16}/; if(!regex.test(login_passwd_new)){ alert("您的工号为弱口令密码,请修改密码后登录"); return false; } //密码必须包含特殊字符 _&#% if(!(login_passwd_new.indexOf("_")!=-1||login_passwd_new.indexOf("&")!=-1||login_passwd_new.indexOf("#")!=-1||login_passwd_new.indexOf("%")!=-1)){ alert("您的工号为弱口令密码,请修改密码后登录"); return false; } //不能连续字符(如123、abc)连续3位或3位以上 if(!LxStr(login_passwd_new)){ $.messager.alert("提示", "您的工号为弱口令密码,请修改密码后登录"); return false; } //不能相同字符(如111、aaa)连续3位或3位以上 var re = /(\w)*(\w)\2{2}(\w)*/g; if(re.test(login_passwd_new)){ alert("您的工号为弱口令密码,请修改密码后登录"); return false; } if(login_passwd_old==login_passwd_new){ alert("新密码与旧密码重复"); return false; } if($.trim(login_passwd_new) != $.trim(login_passwd_new_re)){ alert("新密码与重复密码不一致"); return; } if(user_id==""){ return; } if(login_passwd_old==""||login_passwd_new==""){ alert("提示", "每一项都是必须填写的哟!"); return; }; param.current_passwd = $.md5(param.login_passwd_old); param.new_passwd = $.md5(param.login_passwd_new); param.user = user_id $.post(ctx+'/updatePassword.action',{user_id:user_id,current_passwd:$.md5(login_passwd_old),new_passwd:$.md5(login_passwd_new)},function(data){ if(data.code == '0000'){ alert("修改成功请重新登陆"); window.location = "/lms-base/login.jsp" }else{ alert("修改失败"); } },'json'); } //不能连续字符(如123、abc)连续3位或3位以上 LxStr = function(str){ var arr = str.split(''); var flag = true; for (var i = 1; i < arr.length-1; i++) { var firstIndex = arr[i-1].charCodeAt(); var secondIndex = arr[i].charCodeAt(); var thirdIndex = arr[i+1].charCodeAt(); thirdIndex - secondIndex == 1; secondIndex - firstIndex==1; if((thirdIndex - secondIndex == 1)&&(secondIndex - firstIndex==1)){ flag = false; } } if(!flag){ $("#message_").text("您的工号为弱口令密码,请修改密码后登录!"); return flag; } return flag; } getQueryString = function (name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if ( r != null ){ return decodeURI(r[2]); }else{ return null; } } $.fn.serializeObject = function() { var o = {}; var a = this.serializeArray(); $.each(a, function() { if (o[this.name]) { if (!o[this.name].push) { o[this.name] = [o[this.name]]; } o[this.name].push(this.value || ''); } else { o[this.name] = this.value || ''; } }); return o; }; /** * 此方法挪到最后调用 */ $(document).ready(function(){ modifyPassword.initEvent(); }); })();

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2015-09-28 Java @override报错的解决方法