validationEngine参数详解

validationEngine参数详解validationEngine·jQueryv1.4.4+注意事项:1.演示版本为v2.2.4;2.v2.0以下的版本参数并不完全通用;对 validationEngine.jquery.css 文件进行修改,修改如下:1.提示内容字体改为宋体;2.去除中各浏览器的私有属性(各浏览器已经支持圆角和阴影,不再需要加私有属性)。…


Jetbrains全系列IDE稳定放心使用

validationEngine

  • ·jQuery v1.4.4+

注意事项:

1.演示版本为 v2.2.4;

2.v2.0 以下的版本参数并不完全通用;

对 validationEngine.jquery.css 文件进行修改,修改如下:

1.提示内容字体改为宋体;

2.去除中各浏览器的私有属性(各浏览器已经支持圆角和阴影,不再需要加私有属性)。

对 jquery.validationEngine.js 文件进行修改,修改如下:

1.将 312 行的 field.focus(); 注释掉,当有输入控件在 Table 内部时,验证会导致回到顶部的现象;

对 jquery.validationEngine-zh_CN.js 文件进行修改,修改如下:

1.修改部分提示文字;

2.增加两个对中文字符的验证规则:minSizeCN 和 maxSizeCN;

3.去除 “validate2fields”: {“alertText”:”* 请输入 HELLO”},

将以上两个JS文件进行合并

【options 参数说明】(可选)

名称 默认值 说明
validationEventTrigger “blur” 触发验证的事件,支持事件可参考 jQuery 的事件说明。

PS:如果希望只在表单提交时验证,可以设置为空。

scroll true 屏幕自动滚动到第一个验证不通过的位置
focusFirstField true 验证未通过时,是否给第一个不通过的控件获取焦点
promptPosition “topRight” 验证提示信息的位置,可设置为:”topRight”, “bottomLeft”, “centerRight”, “bottomRight”
autoPositionUpdate false 是否自动调整提示层的位置
bindMethod “bind” 验证事件的绑定方式,可设置为:bind, live

PS:设置 live 似乎绑定事件无效,但是表单提交时能验证,建议不修改。[Demo]

binded false 是否已经绑定其他事件,设为 true 将不进行验证。
inlineAjax false  
ajaxFormValidation false 使用 Ajax 验证表单
ajaxFormValidationURL false 设置 Ajax 验证的 URL,默认使用 form 的 action 属性
ajaxValidCache {}  
onAjaxFormComplete $.noop 表单提交,Ajax 验证完成后的行为(Function)[Demo]
onBeforeAjaxFormValidation $.noop 表单提交验证规则通过后,Ajax 验证之前的行为(Function)[Demo]
onValidationComplete false 表单提交验证完成时的行为(Function)

可以得到两个参数:表单元素 和 验证结果(ture or false)[Demo]

onSuccess false 实时验证所有项目都通过时,发生的行为(Function)[Demo]
onFailure false 实时验证有未通过项目时,发生的行为(Function)[Demo]

PS:onSuccess 和 onFailure 在禁用实时验证时无效。例如 validationEventTrigger 设为空,或 bindMethod 设为 live

isOverflown false 表单是否在溢出滚动的元素内(即外部元素设置了 overflow:scroll)

PS:设置为 ture 后,提示内容的插入位置将更改为在验证的控件之前插入;

  此时需要在控件外层再套一个元素,并设置 class=”inputContainer”

overflownDIV “” 设置了溢出滚动的元素,格式为 jQuery 的选择器。
showArrow true  
isError false  
InvalidFields []  

【使用方法】

载入 CSS 文件

<link rel="stylesheet" href="css/validationEngine.jquery.css">

载入 JavaScript 文件

<script src="js/jquery.validationEngine.js"></script> 
<script src="js/jquery.validationEngine-zh_CN.js"></script> 
<!--  jquery.validationEngine-zh_CN.js 该文件为提示文字和自定义验证规则;  修改版已经将这两个文件合并,只需要载入 jquery.validationEngine.js;  另外,jQuery 插件当然还需要载入 jQuery 库,版本需在 jQuery 1.4.4 以上。  -->

给表单加上 ID

<form id="form_id" ...> 
... 
</form> 
<!-- ID 必须设置在 Form 标签中,否则无效 -->

给控件加上 ID 及 设置验证类型

<input id="test_1" name="test_1" type="text" class="validate[required]"> 
<input id="test_2" name="test_2" type="checkbox" class="validate[required]"> 
<textarea id="test_3" name="test_3" class="validate[required]"><textarea> 
<!--  validate[required] 表示必须填写  控件必须要设置 ID,但并不要求与 Name 相同  --> 

设置验证

// 直接调用 
$("#form_id").validationEngine(); 
 
// 自定义参数调用 
$("#form_id").validationEngine("attach",{ 
       
    promptPosition:"centerRight", 
    scroll:false 
}); 

【验证类型】

<!--  注:验证规则均写在 validate[] 中,如有多条规则,用英文逗号(,) 分割。  例:validate[required,minSize[6],custom[onlyLetterNumber]]  --> 
名称 示例 说明
required validate[required] 表示必填项
optional validate[optional] 表示可选项。若不输入,不要求必填,若有输入,则验证其是否符合要求。
dateRange[name] validate[dateRange[grp1]] 验证日期范围
dateTimeRange[name] validate[dateTimeRange[grp1]] 验证日期及时间范围
minSize[int] validate[minSize[6]] 最少输入字符数
maxSize[int] validate[maxSize[20]] 最多输入字符数
groupRequired[name] validate[groupRequired[grp2]] 群组中至少输入一项
min[int] validate[min[1]] 最小值(该项为数字的最小值,注意与 minSize 的区分)
max[int] validate[max[9999]] 最大值(该项为数字的最大值,注意与 maxSize 的区分)
past[date] validate[past[2012/12/20]] 日期必需在 date 或 date 的未来。date 格式可写作 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D 或 now
future[date] validate[future[now]] 日期必须在 data 或 date 的过去。date 格式可写作 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D 或 now
maxCheckbox[int] validate[maxCheckbox[2]] 最多选取的项目数(用于Checkbox)
minCheckbox validate[minCheckbox[2]] 最少选取的项目数(用于Checkbox)
equals validate[equals[id]] 当前控件值需与 id 这个控件的值相同
phone validate[custom[phone]] 验证电话号码
email validate[custom[email]] 验证 Email 地址
integer validate[custom[integer]] 验证整数
number validate[custom[number]] 验证数字
date validate[custom[date]] 验证日期,格式为 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D
dateFormat validate[custom[dateFormat]] 验证日期格式,格式为 YYYY/MM/DD、YYYY/M/D、YYYY-MM-DD、YYYY-M-D
dateTimeFormat validate[custom[dateTimeFormat]] 验证日期及时间格式,格式为:YYYY/MM/DD hh:mm:ss AM|PM
ipv4 validate[custom[ipv4]] 验证 ipv4 地址
url validate[custom[url]] 验证 url 地址,需以 http://、https:// 或 ftp:// 开头
onlyNumberSp validate[custom[onlyNumberSp]] 只接受填数字和空格
onlyLetterSp validate[custom[onlyLetterSp]] 只接受填英文字母(大小写)和单引号(‘)
onlyLetterNumber validate[custom[onlyLetterNumber]] 只接受数字和英文字母
ajax validate[ajax[ajaxUserCallPhp]] 在验证规则中自定义

“ajaxUserCallPhp”:{

“url”:”phpajax/ajaxValidateFieldUser.php”,

“extraData”:”name=eric”,

“alertTextOk”:”* 此帐号名称可以使用”,

“alertText”:”* 此名称已被其他人使用”,

“alertTextLoad”:”* 正在确认帐号名称是否有其他人使用,请稍等。”

}

funcCall validate[funcCall[functionName]] 调用外部函数

【API 方法】

名称 示例 说明
attach $(“#form_id”).validationEngine(“attach”); 注册表单验证事件
detach $(“#form_id”).validationEngine(“detach”); 取消注册表单验证事件
validate alert($(“#form_id”).validationEngine(“validate”)); 验证表单,返回结果 true 或 false
validateField alert($(“#form_id”).validationEngine(“validateField”,”#element_id”)); 验证单个控件,返回结果 true 或 false
showPrompt $(“#element_id”).validationEngine(“showPrompt”,”提示内容”,”load”); 在该元素上创建一个提示内容,3 种状态:”pass”, “error”, “load”
hidePrompt $(“#element_id”).validationEngine(“hidePrompt”); 隐藏该元素的提示内容
hide $(“#form_id”).validationEngine(“hide”); 关闭表单中的提示
hideAll $(“#form_id”).validationEngine(“hideAll”); 关闭页面上的所有提示
updatePromptsPosition $(“#form_id”).validationEngine(“updatePromptsPosition”) 更新提示层的位置

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186200.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 程序员接私活怎样防止做完了不给钱?「建议收藏」

    程序员接私活怎样防止做完了不给钱?

    2022年2月12日
  • [Java基础]StringUtils.join()方法与String.join()方法的使用

    [Java基础]StringUtils.join()方法与String.join()方法的使用StringUtils.join()和String.join()用途:将数组或集合以某拼接符拼接到一起形成新的字符串。1.StringUtils.join()方法:(1)使用前需先引入common-lang3的jar包,可去官网下载:apache官网下载页面(2)方法如下图:(3)基本上此方法需传入2个参数,第一个参数是传入一个任意类型数组或集合,第二个参数是拼接符。…

    2022年6月9日
  • vue常用组件库_vue内置组件

    vue常用组件库_vue内置组件目录前言一、Vue.jsUI组件二、Vue.js开发框架三、Vue.js实用库四、Vue.js服务端五、Vue.js辅助工具六、Vue.js应用实例七、Vue.jsDemo示例八、详细分类01、UI组件及框架02、滚动scroll组件03、slider组件04、编辑器05、图表06、日历07、地址选择08、地图09、播放器10、文件上传11、图片处理12、提示13、进度条14、开发框架汇总15、实用库汇总

    2022年11月1日
  • 从机械硬盘和固态硬盘的结构来看IO

    从机械硬盘和固态硬盘的结构来看IO“磁盘”这个词,对于程序员来说并不陌生,我们知道它是一种存储介质,主要用来存储数据的,可以说常用的中间件基本上都离不开它,比如我们常用的MySQL数据库、kafka消息引擎,甚至redis缓存都离不开磁盘。我们在优化某个业务逻辑的时候,经常需要用到缓存,尽量让热数据都从缓存里读取,因为我们知道磁盘是缓慢的,特别在高并发的场景下,我们要保证极少的请求走磁盘IO。不知道你有没有思考过以下问题: 机械硬盘为什么慢? 机械硬盘有多慢? kafka也是写磁盘的,它却挺快的,为什么?..

    2022年5月12日
  • JAVA语言实现计算器

    JAVA语言实现计算器JAVA语言实现计算器

    2022年7月19日
  • OpenCV 人脸识别LBPH算法分析

    OpenCV 人脸识别LBPH算法分析一、背景及理论基础人脸识别是指将一个需要识别的人脸和人脸库中的某个人脸对应起来(类似于指纹识别),目的是完成识别功能,该术语需要和人脸检测进行区分,人脸检测是在一张图片中把人脸定位出来,完成的是搜寻的功能。从OpenCV2.4开始,加入了新的类FaceRecognizer,该类用于人脸识别,使用它可以方便地进行相关识别实验。原始的LBP算子定义为在3*3的窗口内,以窗口中心像素为阈值,将相邻的8…

    2022年6月3日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号