validationEngine 使用
引入文件
环境在 jQuery 下 , 所有先要引入 jQuery
<%--校验样式--%>
<link rel="stylesheet" href="<%=basePath%>css/validationEngine.jquery.css">
<%--校验及自定义规则规则--%>
<script type="text/javascript" src="<%=basePath%>common/jquery-validation/1.14.0/jquery.validationEngine.min.js"></script>
链接:http://pan.baidu.com/s/1qYLQgTQ 密码:5lw3
已经添加部分自定义校验
使用 两种方式:
普通校验
<input class="form-control" type="text" data-validation-engine="validate[required]"/> 自定义校验
<input class="form-control" type="text" data-validation-engine="validate[required,custom[chinaId]]"/>
<input class="form-control" type="text" data-validation-engine="validate[required,ajax[ajaxRegisterCheck]]"/>
<input type="text" class="validate[required]">
初始化 参数调用:
$("#form").validationEngine('attach', {
relative: true,
overflownDIV: "#divPostion",
isOverflown:true,
overflownDIV: $('#divPostion'),
autoHidePrompt:true,
autoHideDelay: 5000, // 显示时间
promptPosition: "topLeft" // 验证弹出框的位置,topRight,topLeft,bottomRight,bottomLeft,centerRight,centerLeft,inline
});
初始化 直接调用:
// 直接调用
$('#form').validationEngine();
取消校验 :
// 取消校验
$("#form").validationEngine("detach");
验证类型说明
名称 | 示例 | 说明 |
---|---|---|
required | validate[required] | 表示必填项 |
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 的值相同 |
number | validate[custom[number]] | 验证数字 |
integer | validate[custom[integer]] | 验证整数 |
phone | validate[custom[phone]] | 验证电话号码 |
validate[custom[email]] | 验证 E-mail 地址 | |
url | validate[custom[url]] | 验证 url 地址,需以 http://、https:// 或 ftp:// 开头 |
ipv4 | validate[custom[ipv4]] | 验证 ipv4 地址 |
onlyNumberSp | validate[custom[onlyNumberSp]] | 只接受填数字和空格 |
onlyLetterSp | validate[custom[onlyLetterSp]] | 只接受填英文字母、单引号(')和空格 |
onlyLetterNumber | validate[custom[onlyLetterNumber]] | 只接受数字和英文字母 |
custom[自定义规则] | validate[custom[ruleName]] | 自定义规则验证
|
ajax | validate[ajax[ajaxName]] | 自定义 ajax 验证
/*
传输方式:get 传递参数:"fieldId=" + field.attr("id") + "&fieldValue=" + field.val() 额外参数:extraData 可以设置为字符串或对象,会在参数结尾追加 "&extraData" 返回数据格式:数组 返回数据内容:[String,Boolean,String] 第一个值类型为 String,是接收到 fieldId 的值; 第二个值类型为 Boolean,验证通过返回 true,不通过返回 false 第三个值类型为 String,是弹出的提示信息,为空则显示声明时的信息; 具体请参考 [Demo] |
funcCall | validate[funcCall[functionName]] | 调用外部函数验证
functionName(field, rules, i, options) |
参数说明:
名称 | 默认值 | 说明 |
---|---|---|
validationEventTrigger | 'blur' | 触发验证的事件,支持事件可参考 jQuery 的事件说明。
PS:如果希望只在表单提交时验证,可以设置为空。或者设置参数 binded:false |
binded | true | 是否绑定即时验证 |
scroll | true | 屏幕自动滚动到第一个验证不通过的位置。 |
focusFirstField | true | 验证未通过时,是否给第一个不通过的控件获取焦点。 |
validateNonVisibleFields | false | 是否验证不可见的元素(如 type="hidden" 的输入框,或多个输入控件在选项卡切换中) |
showPrompts | true | 是否显示提示信息 |
showArrow | true | 是否显示提示信息的箭头 |
promptPosition | 'topRight' |
提示信息的位置,可设置为:'topRight', 'topLeft', 'bottomRight', 'bottomLeft', 'centerRight', 'centerLeft', 'inline' 可设置更具体的位置,格式为:"方向: X偏移值, Y偏移值"。如: |
autoPositionUpdate | false | 是否自动调整提示层的位置 |
autoHidePrompt | false | 是否自动隐藏提示信息 |
autoHideDelay | 100000 | 自动隐藏提示信息的延迟时间 (ms) |
fadeDuration | 0.3 | 隐藏提示信息淡出的时间 |
addPromptClass | '' | 给提示信息增加 class
Ciaoca 增强版中,增加样式如下: 'formError-noArrow' -- 无箭头样式 'formError-text' -- 纯文字样式 'formError-small' -- 精简版样式 'formError-white' -- 白色版样式 可以叠加使用,如: |
custom_error_messages | {} | 自定义错误信息内容 [Demo] |
maxErrorsPerField | false | 单个元素显示错误提示的最大数量,值设为数值。默认 false 表示不限制。 |
showOneMessage | false | 是否只显示一个提示信息 |
doNotShowAllErrosOnSubmit | false | 在提交表单时不显示所有的错误信息(建议使用参数 showOneMessage 替代) |
addSuccessCssClassToField | '' | 验证通过时,给控件增加 class,当再次验证失败时,会去除。 |
addFailureCssClassToField | '' | 验证失败时,给控件增加 class,当再次验证通过时,会去除。 |
prettySelect | false | 是否使用了美化过的 select 选择控件 [Demo] |
onFieldSuccess | false | 控件验证通过时的回调函数
function(field){} |
onFieldFailure | false | 控件验证失败时的回调函数
function(field){} |
onSuccess | false | 在表单验证结果为通过时的回调函数 |
onFailure | false | 在表单验证结果为失败时的回调函数
PS:onSuccess 和 onFailure 请参考 [Demo] |
onValidationComplete | false | 表单提交验证完成时的回调函数 [Demo]
function(form, valid){},参数: form:表单元素 valid:验证结果(ture or false) PS:使用此方法后,表单即使验证通过也不会进行提交,交给定义的回调函数进行操作。 |
ajaxFormValidation | false | 是否使用 Ajax 提交表单(默认使用 GET 方式发送数据) |
ajaxFormValidationURL | false | 设置 Ajax 提交的 URL,默认使用 form 的 action 属性 |
ajaxFormValidationMethod | 'get' | 设置 Ajax 提交时,发送数据的方式 |
onAjaxFormComplete | $.noop | 表单提交,Ajax 验证完成后的行为(Function)[Demo]
function(status, form, json, options){} |
onBeforeAjaxFormValidation | $.noop | 表单提交验证通过后,Ajax 提交之前的回调函数 [Demo]
function(form, options){} |
ajaxValidCache | {} | |
isError | false | |
InvalidFields | [] | |
isOverflown | false | 表单是否在溢出滚动的元素内(即外部元素设置了 overflow:scroll)
PS:设置为 ture 后,提示内容的插入位置将更改为在验证的控件之前插入; 此时需要在控件外层再套一个元素,并设置 class="inputContainer" |
overflownDIV | '' | 设置了溢出滚动的元素,格式为 jQuery 的选择器。 |
usePrefix | '' | 使用 ID 前缀 |
useSuffix | '' | 使用 ID 后缀 |
validateAttribute | 'class' | 存放验证规则的属性 |
bindMethod | 'bind' | |
inlineAjax | false |
validationEngine 使用的更多相关文章
- jQuery.validationEngine.js学习
项目中使用到了这个插件,抽了个空,看了一下. (function($){ var method ={} $.fn.validationEngine = function(){} $.validatio ...
- validationEngine[转]
随笔- 31 文章- 0 评论- 40 validationEngine中文版 — jquery强大的表单验证插件 中文汉化版,官方只有英文的.同时根据中国国情修改了部分验证规则. 这个插件 ...
- jquery validationEngine的使用
1.引入文件 <script src="/js/jquery-1.4.2.min.js" type="text/javascript"></s ...
- jquery validationEngine 使用ajax验证不通过也提交表单
转自 http://mylfd.iteye.com/blog/2007227 validationEngine给我们为前端的表单验证减少了很大的工作量.大部分情况我们使用validationEngin ...
- jQuery.validationEngine前端验证
引入相关文件: <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.js" type ...
- jquery.validationEngine
引入库文件 <!DOCTYPE html> <head> <!--jQuery--> <script type="text/javascript&q ...
- Jquery("#form_content").validationEngine()失效原因分析
使用validationEngine()函数对表单进行各种校验,由于多个页面都引用了相关js文件,后面子页面的validationEngine()始终不生效:....: 测试后发现重复引用了JQuer ...
- validationEngine 表单验证插件使用
废话少说,直接上代码,可拷贝直接运行: <!DOCTYPE html> <html lang="zh"> <head> <meta cha ...
- Jquery ValidationEngine 修改验证提示框的位置
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- Jenkins环境搭建(4)-配置定时构建
每次手动触发job构建,是很麻烦的一件事情,job中可以配置定时构建,今天就来分享下定时构建:构建分为两种:定时构建和轮询SCM. 一.定时构建 Jenkins采用了著名的UNIX任务调度工具CRON ...
- 监听F5刷新,添加路由前缀
为了解决ninx反向代理,添加路由,但最终react的route还是不认识,研究了半天做个记录: document.addEventListener("keydown",funct ...
- Python基础之集合
一.定义: 二.基本操作: 三.运算: 交集&, 并集|, 补集-, 对称补集^, 子集< 超集> 四.集合推导式: 五.固定集合 frozenset 六.基本代码: # 1. ...
- javascript基础常识了解一下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- HDU 6321 Dynamic Graph Matching
HDU 6321 Dynamic Graph Matching (状压DP) Problem C. Dynamic Graph Matching Time Limit: 8000/4000 MS (J ...
- c语言中的 #ifndef、#def、#endif等宏的意思
#ifndef.(或者#ifndef).#def.#endif等宏这几个宏是为了进行条件编译.一般情况下,源程序中所有的行都参加编译.但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一 ...
- .net经典书籍
C#敏捷开发实践 C#从现象到本质 NET开发经典名著:Visual Studio 2017高级编程(第7版) 代码大全(第2版) C#高级编程(第10版 C#6&.NET Core1.0)/ ...
- ad 线束和网络
ad 线束和通道复用会遇到网络无法更新的pcb的异常, 就算,我们把网络作用范围调整到页,电源全局仍然会失败,通过查找原因 尽量网络标签不同.稍微更改就可以 比如 sda1,sda1s不要一样
- 转:三款免费好用的Gif录屏神器
原文链接:三款免费好用的Gif录屏神器 自己用了 ScreenToGif 版本2.14.1下载地址 原文内容: 三款免费好用的Gif录屏神器 2018年06月02日 18:52:21 独家雨 ...
- Sessions Hang on row cache lock
Sessions Hang on "row cache lock" (dc_objects) While Creating & Dropping a Table Concu ...