js正则验证强密码

jquery.validate表单验证密码完整例子(带密码强度显示) 立即下载

<!doctype html>
<html>
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c"  uri="http://java.sun.com/jsp/jstl/core" %>
<%@ include file="../../common/commonVar.jsp"%>
<title><%=title%></title>
<jsp:include page="../../common/commonMeta.jsp" />
<jsp:include page="../../common/commonCSS.jsp" />
<link rel="stylesheet" type="text/css" href="<%=STATIC_HOME_V2%>/tools/bootstrap/css/bootstrap.css">
<link rel="stylesheet" type="text/css" href="<%=STATIC_HOME_V2%>/tools/zebra/css/default/zebra_dialog.css">
<link rel="stylesheet" type="text/css" href="<%=CSS_HOME_V2 %>/common/common.css">
<link rel="stylesheet" type="text/css" href="<%=CSS_HOME_V2 %>/modules/center/changePW.css">


</head>
<style type="text/css">
    .btn {
        margin: 0 4px;
        background: #d71920;
        color:#fff;
        border-radius:4px !important;
        -moz-border-radius:4px !important;
        -webkit-border-radius: 4px !important;
    }
</style>
<body>
<form id="passwordForm">
<div class="userbox2" style="height:400px;">
      <div class="user_widtleft">
      <div class="user_title">密码修改</div>
      <div class="padding5">
      <table width="100%" border="0" cellpadding="0" cellspacing="0" class=" font12">
     
  <tr>
    <td width="16%" align="right"><span class="redstart">*</span>原始密码:</td>
    <td width="84%" style="position:relative;">
       <input id="Bd_regUserPW1" type="password"  name="password" class="form-control input-sm " style="width:260px; ">
<div id="passwordTip" style=" color:red; position:absolute; left:270px; top:0; font-weight:bold; min-width:100px;">
<p class="error">
<span id="span_error" style="display:block;"></span>
</p>
</div>  

    </td>
  </tr>
  <tr>
    <td align="right"><span class="redstart">*</span>新密码:</td>
    <td><input id="Bd_regUserPWNew"   type="password"   name="passwordNew"  class="form-control input-sm " style="width:260px; "></td>
  </tr>
  <tr>
    <td align="right"> <span class="redstart">*</span>密码确认:</td>
    <td><input id="sBd_regUserPWqConirm"   type="password"  name="passwordConfirm" class="form-control input-sm " style="width:260px; "></td>
  </tr>
 <%-- <tr>
    <td align="right"><span class="redstart">*</span>短信验证码:</td>
    <td><input id="sName10" type="text" class="form-control input-sm "  style="width:100px; ">
      <a href="#">获取验证码</a></td> 
  </tr>--%>
      </table>
</div>
      <div class="padding5"></div>
<div style="padding-left:200px; padding-top:15px;"> <button type="button" class="btn btn-default btn-sm"  id="savePasswordBtn"  onclick="savePassword();" style="font-family: 微软雅黑">修改</button></div>


       </div>
            <div class="user_widthright"><iframe name="topFrame"  scrolling="No" marginwidth="0"
marginheight="0" src="${pageContext.request.contextPath}/dispatcher/center/getShouye2" noresize="noresize" height="100%"
width="100%" frameborder="no" border="0" id="iframepage"  ></iframe></div>
      </div> 
     
      <div class="clea"></div>
</div>
</form>


<jsp:include page="../../common/commonHTML.jsp"/>
<jsp:include page="../../common/commonJS.jsp"/>


<script src="<%=STATIC_HOME_V2%>/tools/jquery/jquery-1.8.3.min.js"></script>
  <script  src="<%=STATIC_HOME_V2%>/tools/jqueryPlugins/validate/js/jquery.validate.min.js"></script>
  <script   src="<%=STATIC_HOME_V2%>/tools/jqueryPlugins/validate/js/jquery.validate.extend.js"></script>
  <script src="<%=STATIC_HOME_V2%>/tools/bootstrap/js/bootstrap.min.js"></script>
  <script src="<%=STATIC_HOME_V2%>/tools/zebra/javascript/zebra_dialog.src.js"></script>
<script src="<%=JS_HOME_V2 %>/jsLibrary/cookie.js"></script>
<script src="<%=JS_HOME_V2 %>/jsLibrary/md5.js"></script>
 <script  src="<%=JS_HOME_V2 %>/modules/center/changePW.js"></script> 
<script src="<%=JS_HOME_V2 %>/common/messages_zh.js"></script>




 <script type="text/javascript">


    function iFrameHeight() {
        var ifm= document.getElementById("iframepage");
        var subWeb = document.frames ? document.frames["iframepage"].document :
ifm.contentDocument;
            if(ifm != null && subWeb != null) {
            ifm.height = subWeb.body.scrollHeight;
            }
    }


  


</script> 


</body>


</html>


















-------------------------------------------------------js-----------------------------------------------------


function savePassword(){
$("#savePasswordBtn").attr('disabled',true);
var result = validateSavePassword();
if(result==false){
$("#passwordTip").hide();
}
if(result){
$.ajax({
url : DISPATCHER_PATH + '/user/savePassword',
type : "POST",
dataType : 'json',

data : {
//userName : $("#Bd_regUserName").val(),
password : hex_md5($("#Bd_regUserPW1").val()),
passwordNew : hex_md5($("#Bd_regUserPWNew").val())
},

success : function(data) {
if (data.result) {
// 修改成功
$.Zebra_Dialog('修改成功,请使用新密码重新登录!',{
        'type' : 'confirmation',
        'auto_close' : 7000,
        'onClose':function(caption){
        $.ajax({
url : DISPATCHER_PATH + '/user/logout',
type : "POST",
dataType : 'json',
success : function(data) {
if (data.result) {
// 退出成功
window.parent.location=DISPATCHER_PATH+"/home?current=login";
} else {
// 退出失败
$.Zebra_Dialog('退出失败',{
'type' : 'warning.',
'buttons' : ['关闭']
});
}


}
});
        // window.parent.location=DISPATCHER_PATH+"/home?current=login";
           },
        'buttons' : ['确定']
        });
$("#savePasswordBtn").attr('disabled',false);
$("#passwordTip").show().find("p").show().find("span").hide();

setTimeout(function(){   
$.ajax({
url : DISPATCHER_PATH + '/user/logout',
type : "POST",
dataType : 'json',
success : function(data) {
if (data.result) {
// 退出成功
window.parent.location=DISPATCHER_PATH+"/home?current=login";
} else {
// 退出失败
$.Zebra_Dialog('退出失败',{
'type' : 'warning.',
'buttons' : ['关闭']
});
}


}
});

//window.parent.location=DISPATCHER_PATH+"/home?current=login";
},3000);


} else {
// 修改失败
$("#passwordTip").show().find("p").show().find("span").html(data.errorDetail);
//$("#passwordTip").show().find("span").html(data.errorDetail);
$("#savePasswordBtn").attr('disabled',false);
}

},
   error: function(){
    $("#savePasswordBtn").attr('disabled',false);
  showSystemError();
  }
});
}else{
$("#savePasswordBtn").attr('disabled',false);
}

}


function validateSavePassword(){
var passwordForm = $("#passwordForm");
passwordForm.validate({
rules: {
password:{
required: true
},
passwordNew: {
required: true,
minlength:8,
maxlength:20,
same:true,
regexPassword:true
},
passwordConfirm: {
required: true,
equalTo: "#Bd_regUserPWNew"
}
        },
        messages:{
        password:{
required: "请输入原密码"
},
passwordNew: {
        required: "请输入新密码",
        minlength:"新密码最少8位",
maxlength:"新密码最长20位",
regexPassword: '密码至少包一个大写字母、一个小写字母及一个符号,长度至少8位'
        //,invalidMethod: "密码不能输入符号<>;",
        },
        passwordConfirm: {
    required: "请输入确认密码",
   equalTo: "两次密码输入不一致"
        }
        },
        showErrors: function(errorMap, errorList) {
 //       $("#passwordTip").show().find("p").find("span").html(this.defaultShowErrors());
        $("#passwordTip").hide();
        this.defaultShowErrors();
        },
 //       errorLabelContainer: $("#passwordTip").show().find("p")
});
jQuery.validator.addMethod("same", function(value, element) {  
         return this.optional(element) || same(value);  
     }, "新密码不能与旧密码重复");  




     function same(pwd) {  
         var oldPwd = $("#Bd_regUserPW1").val();  
         if (oldPwd == pwd)  
             return false;  
         else  
             return true;  
     }
     function samehfpwd(pwd) {  
         
         if (/[a-z]/.test(pwd) && /[A-Z]/.test(pwd) && /[0-9]/.test(pwd) && /[-\.&#=+@_]/.test(pwd))  
             return true;  
         else  
             return false;  
     }
     
    
     jQuery.validator.addMethod("regexPassword", function(value, element) {  
    return this.optional(element) || samehfpwd(value); 
    }, "密码至少包一个大写字母、一个小写字母及一个符号");
//alert("passwordForm.valid()="+passwordForm.valid());
if(passwordForm.valid()){
return true;
}else{
return false;
}
}


飞腾D2000 BIOS编译避坑指南:PCIE拆分、S3电源与过温保护配置详解 本文详细解析飞腾D2000 BIOS编译中的关键配置技巧,包括PCIE拆分模式优化、S3电源管理适配及过温保护设置。通过实战案例和参数调优建议,帮助开发者规避常见陷阱,充分发挥国产高性能计算平台的硬件潜力。特别针对BIOS编译过程中的隐蔽问题提供解决方案。 阅读详情

相关推荐

5分钟搞懂SCMA:稀疏码多址接入的核心原理与实战应用

本文深入浅出地解析了SCMA(稀疏码多址接入)的核心原理与实战应用。通过对比传统正交多址技术,阐释了SCMA如何通过非正交叠加和稀疏码本设计,实现远超资源单元数的用户接入,从而有效应对5G海量机器通信(mMTC)的挑战。文章还探讨了其在上行海量连接、免授权接入等场景的应用潜力及工程实现中的关键考量。

zeta9的博客 262

js设置密码的正则表达式,javascript密码验证怎么写

JavaScript 使用关键字function定义函数。函数可以通过声明定义函数也可以是一个表达式Python解释器的安装步骤。一般来说,this 总是指向调用某个方法的对象,但是使用call() 和 apply()方法时,就会改变 this 的指向。例 1var name = '小王', age = 17;name: '小张',console.log(this.name + "年龄" + this.age);例 2var tempStr = "扫地僧";showStr();

阿发狗伪原创 353

人形机器人硬件开发:骨架系统设计全攻略

本文以人形机器人骨架系统为核心研究对象,系统解析其从理论建模到工程实现的全流程设计方法。通过融合刚体力学、材料科学与机器人控制理论,构建"概念基础-理论框架-架构设计-实现机制-实际应用-高级考量-综合拓展"的七层分析体系。重点覆盖运动学/动力学建模、轻量化结构设计、关节模块集成、多物理场耦合优化等关键技术,结合波士顿动力Atlas、本田ASIMO等经典案例,提供从原型设计到量产验证的工程实践指南。

AI天才研究院 1869

用户名、密码等常用的js正则表达式

收集整理了14个常用的javaScript正则表达式,其中包括用户名、密码强度、整数、数字、电子邮件地址(Email)、手机号码、身份证号、 IPv4地址、 十六进制颜色、 日期、 QQ号码、 微信号、车牌号、中文正则。表单验证处理必备。 1 用户名正则 //用户名正则,4到16位(字母,数字,下划线,减号) var uPattern = /^[a-zA-Z0-9_-]{4,16}$/; //输出 true console.log(uPattern.test("iFat3")); 2 密码强度正则 //密

流苏打的博客 6484

Codex API 直接集成指南:告别中转代理,构建稳定高效的 AI 应用

在 AI 应用开发中,API 集成是连接模型能力与业务逻辑的核心环节。其基本原理是通过 HTTP 协议,按照服务提供商定义的规范发送请求并解析响应,实现远程调用。标准化的 API 设计确保了跨平台和跨语言的互操作性,其技术价值在于提供了稳定、可控且可扩展的服务接入方式,是构建企业级智能应用的基础。在实际应用场景中,开发者常需集成如 Codex 这类聚合了多种大语言模型的平台,以调用诸如 DeepSeek 等先进模型。然而,部分开发者仍依赖过时的第三方中转代理工具,这不仅引入了单点故障和版本锁定的风险,还可能

weixin_28224217的博客 337

Docker网络冲突?手把手教你解决Dify社区版无法访问172.18.0.0网段的问题

本文详细解析了在部署Dify社区版时,因Docker默认网段与局域网冲突导致无法访问172.18.0.0网段的问题。通过剖析Docker网络原理,提供了修改Docker守护进程默认地址池的根治方案,并介绍了在Compose文件中指定自定义网络等备选方法,帮助用户彻底解决网络冲突,保障服务稳定运行。

p8q9r0的博客 484

JS校验密码复杂度的正则表达式

1、密码中必须包含大小字母、数字、特称字符,至少8个字符,最多30个字符。 1 2 3 4 5 varregex =newRegExp('(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z])(?=.*[^a-zA-Z0-9]).{8,30}'); if(!regex.test('123456@...

亿卢向倍的专栏 991

【已验证】基于STM32F407与AD9833的幅频特性测试装置设计与实现

本文详细介绍了基于STM32F407微控制器和AD9833 DDS芯片的低成本幅频特性测试装置设计与实现方法。通过扫频原理,该装置能自动生成正弦波信号,测量滤波器等电路的输出幅度变化,并在LCD屏幕或示波器上绘制幅频特性曲线。文章提供了从硬件选型、CubeMX工程配置、关键驱动代码编写到数据处理与可视化的完整教程,帮助电子爱好者与工程师快速搭建实用的滤波器测试工具。

weixin_35649491的博客 119

js正则表达式密码校验

包含八十多个正则表达式,前端开发绝大部分需要的正则表达式都包含。密码必须包含数字,特殊字符,小写字母,大写字母其中三项。分享一个vsCode小插件any-rule。

q12as的博客 2018

基于RK3588调试WiFi模块AIC8800

本文介绍了在RK3588平台上移植AIC8800 WiFi模块驱动的过程。开发环境基于Linux 6.1内核和Buildroot文件系统。驱动移植步骤包括:将驱动包放入SDK指定目录、修改Makefile、编译内核、放置固件文件、手动加载驱动模块等。文章还分析了两种常见异常情况:无法识别模块(检查USB信号线路和供电)和偶发断连(检查硬件连接和调整PHY寄存器)。成功加载后可通过ifconfig看到wlan0节点。

qq_45147279的博客 667

滴滴数据分析80道面试题及参考答案

常见的模型评价指标有准确率、召回率、F1 值、均方误差、均方根误差、R 方等。准确率是指模型预测正确的样本数占总样本数的比例,它反映了模型预测的准确性。召回率是指模型预测为正例的样本中实际为正例的比例,它衡量了模型对正例的捕捉能力。F1 值是准确率和召回率的调和平均数,综合考虑了两者的平衡。均方误差是预测值与真实值之差的平方的平均值,它衡量了模型预测值与真实值的平均偏离程度。均方根误差是均方误差的平方根,与均方误差类似,但更直观地反映了误差的大小。

大模型大数据攻城狮的专栏 1694

uniapp的form表单自定义验证规则

uniapp的form表单自定义验证规则

m0_55333789的博客 1152

springboot+vue项目基础开发(12)vue项目的搭建

在src目录下新建 api,utils,views文件夹。删除componets目录下自动生成的所有文件。在utils文件夹下创建request.js。启动项目,记得是要在管理员下启动。

m0_58498702的博客 152

JS正则表达式实战:5分钟搞定强密码验证(含特殊字符处理技巧)

本文详细介绍了如何使用JS正则表达式实现强密码验证,包括特殊字符处理技巧和用户体验优化。通过单正则表达式实现多规则验证,提升代码性能和可维护性,同时提供动态生成正则表达式的方法,确保密码安全性和用户友好性。

hhh00的博客 854

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

JS - 正则表达式匹配必须包含数字、字母和下划线的字符串(强密码)

var re= /(?=.*[A-Za-z])(?=.*[\d])(?=.*_)/;

LHQ的博客 3228

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

js验证强密码 大小写字母数字字符四选三 且大于8位

/** * 正则验证密码 大小写字母必须包含一位,其它任意 * @author bug<375023402@qq.com> * @dateTime 2019-05-22T10:47:21+0800 * @param string obj 验证对象 * @return boolean */ function chec...

weixin_30718391的博客 581

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

密码正则,以及密码强弱正则

【代码】密码正则,以及密码强弱正则。

m0_62063072的博客 701

html 正则表达式密码判断,JavaScript 密码复杂验证

为了避免用户输入一些弱密码,可以用户创建密码的时候,强制使用一些规则来让用户输入强密码。这时候就要用到JavaScript的密码复杂验证了。使用正则表达式密码的强度验证使用正则表达式,但我们避免将所有规则都写到一个正则表达式中,这样不仅难写,而且阅读不友好。所以分开来写是一个更好的选择。还是直接上代码。服务端验证public string ValidPassword(string password...

weixin_30348079的博客 336

分享二个实用正则

作用:将 allowedSpecials 中包含的「正则元字符」(如 *、(、$ 等)转义为普通字符(如 * → *),避免破坏正则语法。@#$%^&*()]) 正向预查:确保字符串中至少有一个允许的特殊字符(即 allowedSpecials 中指定的字符)。/\\d/.test(password)) errors.push("必须包含至少一个数字");例如:若 allowedSpecials 是 '$()',转义后变为 '$()'(字符串中显示为 $*())。

2501_94629676的博客 379

正则表达式指南:从语法规范到实战案例

在数据处理、文本挖掘和输入验证的领域,正则表达式(Regular Expression,简称 Regex)以轻便和简洁的语法脱颖而出。从简单的邮箱格式校验,到复杂的日志分析提取,正则表达式以其简洁而强大的模式匹配能力,成为了现代编程语言的标配。本文将基于最新的语法规范(参考 ECMAScript 2026 及主流语言标准),深入浅出地解析正则表达式的核心语法,并配合丰富的实战案例,助你从入门到精通。在线练习平台:regex101正则表达式是一种描述字符串模式的形式语言。

河阿里的博客 995

js正则表达式 强密码 必须包含大小写字母,特殊字符,数字的正则8~20位

琢磨了好久 终于写出来了 亲测有效,根据网站提供的强密码修改的 话不多说上代码 var pattern = /^(?![A-z0-9]+$)(?=.[^%&',;=?$\x22])(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9]).{8,20}$/, str = ''; console.log(pattern.test(str)); 测试结果: 1、输入带有大小写数字及...

瑾白芨的博客 1万+

使用正则表达式设置强密码

本文介绍了一个使用正则表达式验证强密码的JavaScript函数。该函数通过正则表达式检查密码是否符合以下要求:长度至少8位,包含大小写字母、数字和特殊字符。实现代码简洁高效,返回布尔值表示验证结果,可直接集成到表单验证系统中。该方案支持跨浏览器使用,能有效确保密码强度。

Datafox(数据狐199-7010-8018) 221

JavaScript 正则表达式

JavaScript 正则表达式 正则表达式在很多地方都要用,java,python,C#,javascript等还有很多,但正则表达式不会受语言的影响,他遵守正则表达式语法,今天我要说的就是javascript的正则表达式的用法,和几个常用的api. 1.什么是正则表达式? 正则表达式是构成搜索模式(search pattern)的字符序列。 .当您搜索文本中的数据时,您可使用搜索模式来描述您...

qq_44216701的博客 144

JS正则表达式实战:构建高安全性密码验证器

本文详细介绍了如何使用JavaScript正则表达式构建高安全性密码验证器,确保密码包含大小写字母、数字和特殊字符,并具备合适的长度。通过分步教程和实战案例,开发者可以快速掌握强密码验证的实现方法,提升用户账号安全性。

weixin_29014237的博客 190

js验证密码强度

这篇文章我们来说一个验证密码强度的例子,大家在进入一个网站的时候,往往都会先注册一个账号,然后输入密码,在输密码的时候,系统会根据我们输入的密码组成的复杂程度来给你的密码显示一个密码强度,一般就是强中弱三种,我们先来说一下密码验证的原理,原理明白了,js代码就好写了,今天的代码会用到正则表达式。 首先说一下密码强度的三种等级是如何划分的, 弱:一般就是纯数字或纯小写字母或者纯大写字母组成的,这种密...

weixin_44644573的博客 2451
上一篇: tomcat部署maven项目缺少spring-web.xxx.jar
下一篇: Eclipse 安装FindBugs插件
javahepeng
博客等级 码龄15年 6粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值