当前位置: 首页 > news >正文

关于Jquery的Validate插件--rules添加自定义方法(强密码验证方法)

简介:请看菜鸟教程,根据给出的方法,自定义识别密码是否为复杂密码的方法

链接: https://www.runoob.com/jquery/jquery-plugin-validate.html

Query Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求。该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来编写用户自定义方法的 API。所有的捆绑方法默认使用英语作为错误信息,且已翻译成其他 37 种语言。

该插件是由 Jörn Zaefferer 编写和维护的,他是 jQuery 团队的一名成员,是 jQuery UI 团队的主要开发人员,是 QUnit 的维护人员。该插件在 2006 年 jQuery 早期的时候就已经开始出现,并一直更新至今。目前版本是 1.14.0。

访问 jQuery Validate 官网,下载最新版的 jQuery Validate 插件。

菜鸟教程提供的 1.14.0 版本下载地址:http://static.runoob.com/download/jquery-validation-1.14.0.zip

自定义方法

<script type="text/javascript">//自定义pwdMatch方法$.validator.addMethod("pwdMatch",function(value,element,params){//强密码正则表达式-大小写字母、数字、符号三种类型组合的密码,长度至少为8位var strongRegex = new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g");if(strongRegex.test(value)) {return true;}else {return false;}},"请使用大小写字母、数字、符号三种类型组合的密码,长度至少为8位。");$(document).ready(function() {$("#submitForm").validate({rules: {//这里添加方法使用规则,即应用上面自定义的密码规则方法newPassword:{pwdMatch:[]},confirmNewPassword:{pwdMatch:[]}},//提交的方法要在这重新写submitHandler: function(form){loading('正在提交,请稍等...');form.submit();},errorContainer: "#messageBox",});});</script>

原文如下

addMethod(name,method,message)方法
参数 name 是添加的方法的名字。

参数 method 是一个函数,接收三个参数 (value,element,param) 。
value 是元素的值,element 是元素本身,param 是参数。

我们可以用 addMethod 来添加除内置的 Validation 方法之外的验证方法。比如有一个字段,只能输一个字母,范围是 a-f,写法如下:

$.validator.addMethod("af",function(value,element,params){  if(value.length>1){return false;}if(value>=params[0] && value<=params[1]){return true;}else{return false;}
},"必须是一个字母,且a-f");
如果有个表单字段的 name=“username”,则在 rules 中写:
username:{af:["a","f"]
}

addMethod 的第一个参数,是添加的验证方法的名字,这时是 af。
addMethod 的第三个参数,是自定义的错误提示,这里的提示为:“必须是一个字母,且a-f”。
addMethod 的第二个参数,是一个函数,这个比较重要,决定了用这个验证方法时的写法。

如果只有一个参数,直接写,比如 af:“a”,那么 a 就是这个唯一的参数,如果多个参数,则写在 [] 里,用逗号分开。

http://www.lryc.cn/news/118920.html

相关文章:

  • 股票自动交易接口开发原理及源码分享
  • 2023/8/11题解
  • 构造函数
  • JS 原型与继承
  • 解决 Oracle 数据库中表被锁问题的方案和方法
  • ORACLE行转列、列转行实现方式及案例
  • AI自动驾驶
  • 思维导图在职业规划中的应用:从职业选择到职业发展的思维导图
  • antv l7每次刷新无法加载iconFont
  • 28 玻尔兹曼机
  • 命令提示符之操作基础(Windows)
  • 【C语言】初识C语言+进阶篇导读
  • wxWidgets学习笔记:wxListCtrl使用详解
  • 酷炫的python日志库-loguru
  • html根据图片变换背景色
  • “深入探究JVM:揭秘Java虚拟机的工作原理“
  • 小程序的api使用 以及一些weui组件实列获取头像 扫码等
  • 海思ss928部署手写数字识别模型
  • 组学知识速递(五)|ChIP-seq知多少?
  • 2308C++内存序概略
  • 【C++】string的使用
  • Android 周期任务
  • 修改第三方组件默认样式
  • 【游戏客户端】制作你玩我猜Like玩法
  • 分页查询从接口到实现,统一对日期类型进行格式化处理
  • 栈和队列详解(1)
  • 苏州OV泛域名RSA加密算法https
  • 凯迪正大—微机继电保护校验仪
  • Linux文件属性与权限管理(可读、可写、可执行)
  • Centos7.9安装lrzsz进行文件传输---Linux工作笔记059