validationEngine 使用方法、参数说明、必填、选填optional

本文主要是介绍validationEngine 使用方法、参数说明、必填、选填optional,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

验证规则均写在 validate[] 中,如有多条规则,用英文逗号(,)分割。

例:validate[required,minSize[6],custom[onlyLetterNumber]]

尤其要说明一个参数:optional,可选项。可填可不填,如果填写了,则执行验证,如果没填写就不验证。

名称示例说明
requiredvalidate[required]

表示必填项

optionalvalidate[optional]厉害了。
可选项。可填可不填,如果填写了,则执行验证,如果没填写就不验证。
groupRequired[string]validate[groupRequired[grp]]在验证组为 grp 的群组,中至少输入或选择一项
condRequired[string]validate[condRequired[ids]]当 ids 的某个控件不为空时,那么该控件也为必填项。

可以依赖多项,如:validate[condRequired[id1,id2]][Demo]

minSize[int]validate[minSize[6]]最少输入字符数
maxSize[int]validate[maxSize[20]]最多输入字符数
min[int]validate[min[1]]最小值(该项为数字的最小值,注意与 minSize 的区分)
max[int]validate[max[9999]]最大值(该项为数字的最大值,注意与 maxSize 的区分)
minCheckbox[int]validate[minCheckbox[2]]最少选取的项目数(用于 Checkbox)
maxCheckbox[int]validate[maxCheckbox[2]]最多选取的项目数(用于 Checkbox)
date[string]validate[custom[date]]验证日期,格式为 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D
dateFormat[string]validate[custom[dateFormat]]验证日期格式,格式为 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D
dateTimeFormat[string]validate[custom[dateTimeFormat]]验证日期及时间格式,格式为:YYYY/MM/DD hh:mm:ss AM|PM
dateRange[string]validate[dateRange[grp1]]验证 grp1 的值是否符合日期范围(开始日期与结束日期)

根据控件的前后位置,如果当前控件在 grp1 元素之后,输入的日期不能是 grp1 日期的过去。

如果当前控件在 grp1 控件之前,输入的日期不能是 grp1 日期的未来。[Demo]

dateTimeRange[string]validate[dateTimeRange[grp1]]验证日期及时间范围,增加了时间的对比,其他的和 dateRange 一样。
past[string]validate[past[2012/12/20]]日期必需是 date 或 date 的过去。date 格式可写作 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D 或 now
future[string]validate[future[now]]日期必须是 data 或 date 的未来。date 格式可写作 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D 或 now
equals[string]validate[equals[id]]当前控件的值需与控件 id 的值相同
numbervalidate[custom[number]]验证数字
integervalidate[custom[integer]]验证整数
phonevalidate[custom[phone]]验证电话号码
emailvalidate[custom[email]]验证 E-mail 地址
urlvalidate[custom[url]]验证 url 地址,需以 http://、https:// 或 ftp:// 开头
ipv4validate[custom[ipv4]]验证 ipv4 地址
onlyNumberSpvalidate[custom[onlyNumberSp]]只接受填数字和空格
onlyLetterSpvalidate[custom[onlyLetterSp]]只接受填英文字母、单引号(')和空格
onlyLetterNumbervalidate[custom[onlyLetterNumber]]只接受数字和英文字母
custom[自定义规则]validate[custom[ruleName]]自定义规则验证
'ruleName': {'regex': RegExp, /* 正则表达式,如果正则能匹配内容表示通过 */'alertText': '验证不通过时的提示信息'
}
ajaxvalidate[ajax[ajaxName]]自定义 ajax 验证
'ajaxName': {'url': 'phpajax/ajaxValidateFieldUser.php', /* 验证程序地址 */'extraData': 'name=eric', /* 额外参数 */'alertTextOk': '验证通过时的提示信息','alertText': '验证不通过时的提示信息','alertTextLoad': '正在验证时的提示信息'
}
/** 例:* <input type="text" id="email" class="validate[ajax[ajaxName]]">* 假设填写的值为:ciaoca@gmail.com* extraData 设置为:'type=register&verify=abcd'* 提交到后端的 url 为:phpajax/ajaxValidateFieldUser.php?email=ciaoca@gmail.com&type=register&verify=abcd*/

传输方式:get

传递参数:"fieldId=" + field.attr("id") + "&fieldValue=" + field.val()

额外参数:extraData 可以设置为字符串或对象,会在参数结尾追加 "&extraData"

返回数据格式:json

返回数据内容:[String,Boolean]

第一个值类型为 String,是接收到 fieldId 的值;

第二个值类型为 Boolean,验证通过返回 true,不通过返回 false

具体请参考 [Demo]

funcCallvalidate[funcCall[functionName]]调用外部函数验证

functionName(field, rules, i, options)

这篇关于validationEngine 使用方法、参数说明、必填、选填optional的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/693646

相关文章

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

MyBatis-Plus 中 nested() 与 and() 方法详解(最佳实践场景)

《MyBatis-Plus中nested()与and()方法详解(最佳实践场景)》在MyBatis-Plus的条件构造器中,nested()和and()都是用于构建复杂查询条件的关键方法,但... 目录MyBATis-Plus 中nested()与and()方法详解一、核心区别对比二、方法详解1.and()

Spring IoC 容器的使用详解(最新整理)

《SpringIoC容器的使用详解(最新整理)》文章介绍了Spring框架中的应用分层思想与IoC容器原理,通过分层解耦业务逻辑、数据访问等模块,IoC容器利用@Component注解管理Bean... 目录1. 应用分层2. IoC 的介绍3. IoC 容器的使用3.1. bean 的存储3.2. 方法注

golang中reflect包的常用方法

《golang中reflect包的常用方法》Go反射reflect包提供类型和值方法,用于获取类型信息、访问字段、调用方法等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值... 目录reflect包方法总结类型 (Type) 方法值 (Value) 方法reflect包方法总结

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

java中新生代和老生代的关系说明

《java中新生代和老生代的关系说明》:本文主要介绍java中新生代和老生代的关系说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、内存区域划分新生代老年代二、对象生命周期与晋升流程三、新生代与老年代的协作机制1. 跨代引用处理2. 动态年龄判定3. 空间分

MySQL查询JSON数组字段包含特定字符串的方法

《MySQL查询JSON数组字段包含特定字符串的方法》在MySQL数据库中,当某个字段存储的是JSON数组,需要查询数组中包含特定字符串的记录时传统的LIKE语句无法直接使用,下面小编就为大家介绍两种... 目录问题背景解决方案对比1. 精确匹配方案(推荐)2. 模糊匹配方案参数化查询示例使用场景建议性能优