Validform表单验证总结篇


Posted in Javascript onOctober 31, 2016

近期项目里用到了表单的验证,选择了Validform_v5.3.2。

先来了解一下一些基本的参数:

通用表单验证方法:

Demo:

$(".demoform").Validform({//$(".demoform")指明是哪一表单需要验证,名称需加在form表单上;
btnSubmit:"#btn_sub", //#btn_sub是该表单下要绑定点击提交表单事件的按钮;如果form内含有submit按钮该参数可省略;
btnReset:".btn_reset",//可选项 .btn_reset是该表单下要绑定点击重置表单事件的按钮;
tiptype:1, //可选项 1=>pop box,2=>side tip(parent.next.find; with default pop),3=>side tip(siblings; with default pop),4=>side tip(siblings; none pop),默认为1,也可以传入一个function函数,自定义提示信息的显示方式(可以实现你想要的任何效果,具体参见demo页);
ignoreHidden:false,//可选项 true | false 默认为false,当为true时对:hidden的表单元素将不做验证;
dragonfly:false,//可选项 true | false 默认false,当为true时,值为空时不做验证;
tipSweep:true,//可选项 true | false 默认为false,只在表单提交时触发检测,blur事件将不会触发检测(实时验证会在后台进行,不会显示检测结果);
label:".label",//可选项 选择符,在没有绑定nullmsg时查找要显示的提示文字,默认查找".Validform_label"下的文字;
showAllError:false,//可选项 true | false,true:提交表单时所有错误提示信息都会显示,false:一碰到验证不通过的就停止检测后面的元素,只显示该元素的错误信息;
postonce:true, //可选项 表单是否只能提交一次,true开启,不填则默认关闭;
ajaxPost:true, //使用ajax方式提交表单数据,默认false,提交地址就是action指定地址;
datatype:{//传入自定义datatype类型,可以是正则,也可以是函数(函数内会传入一个参数);
"*6-20": /^[^\s]{6,20}$/,
"z2-4" : /^[\u4E00-\u9FA5\uf900-\ufa2d]{2,4}$/,
"username":function(gets,obj,curform,regxp){
//参数gets是获取到的表单元素值,obj为当前表单元素,curform为当前验证的表单,regxp为内置的一些正则表达式的引用;
var reg1=/^[\w\.]{4,16}$/,
reg2=/^[\u4E00-\u9FA5\uf900-\ufa2d]{2,8}$/;
if(reg1.test(gets)){return true;}
if(reg2.test(gets)){return true;}
return false;
//注意return可以返回true 或 false 或 字符串文字,true表示验证通过,返回字符串表示验证失败,字符串作为错误提示显示,返回false则用errmsg或默认的错误提示;
},
"phone":function(){
// 5.0 版本之后,要实现二选一的验证效果,datatype 的名称 不 需要以 "option_" 开头; 
}
},
usePlugin:{
swfupload:{},
datepicker:{},
passwordstrength:{},
jqtransform:{
selector:"select,input"
}
},
beforeCheck:function(curform){
//在表单提交执行验证之前执行的函数,curform参数是当前表单对象。
//这里明确return false的话将不会继续执行验证操作; 
},
beforeSubmit:function(curform){
//在验证成功后,表单提交前执行的函数,curform参数是当前表单对象。
//这里明确return false的话表单将不会提交; 
},
callback:function(data){
//返回数据data是json格式,{"info":"demo info","status":"y"}
//info: 输出提示信息;
//status: 返回提交数据的状态,是否提交成功。如可以用"y"表示提交成功,"n"表示提交失败,在ajax_post.php文件返回数据里自定字符,主要用在callback函数里根据该值执行相应的回调操作;
//你也可以在ajax_post.php文件返回更多信息在这里获取,进行相应操作;
//ajax遇到服务端错误时也会执行回调,这时的data是{ status:**, statusText:**, readyState:**, responseText:** };
//这里执行回调操作;
//注意:如果不是ajax方式提交表单,传入callback,这时data参数是当前表单对象,回调函数会在表单验证全部通过后执行,然后判断是否提交表单,如果callback里明确return false,则表单不会提交,如果return true或没有return,则会提交表单。
}
});
Validform对象的方法和属性:
tipmsg:自定义提示信息,通过修改Validform对象的这个属性值来让同一个页面的不同表单使用不同的提示文字;
dataType:获取内置的一些正则;
eq(n):获取Validform对象的第n个元素;
ajaxPost(flag,sync,url):以ajax方式提交表单。flag为true时,跳过验证直接提交,sync为true时将以同步的方式进行ajax提交,传入了url地址时,表单会提交到这个地址;
abort():终止ajax的提交;
submitForm(flag,url):以参数里设置的方式提交表单,flag为true时,跳过验证直接提交,传入了url地址时,表单会提交到这个地址;
resetForm():重置表单;
resetStatus():重置表单的提交状态。传入了postonce参数的话,表单成功提交后状态会设置为"posted",重置提交状态可以让表单继续可以提交;
getStatus():获取表单的提交状态,normal:未提交,posting:正在提交,posted:已成功提交过;
setStatus(status):设置表单的提交状态,可以设置normal,posting,posted三种状态,不传参则设置状态为posting,这个状态表单可以验证,但不能提交;
ignore(selector):忽略对所选择对象的验证;
unignore(selector):将ignore方法所忽略验证的对象重新获取验证效果;
addRule(rule):可以通过Validform对象的这个方法来给表单元素绑定验证规则;
check(bool,selector):对指定对象进行验证(默认验证当前整个表单),通过返回true,否则返回false(绑定实时验证的对象,格式符合要求时返回true,而不会等ajax的返回结果),bool为true时则只验证不显示提示信息;
config(setup):可以通过这个方法来修改初始化参数,指定表单的提交地址,给表单ajax和实时验证的ajax里设置参数;

下面是demo的下载地址的链接,有需要的可以下载。

Validform表单验证总结篇

以上所述是小编给大家介绍的Validform表单验证总结篇,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery formValidator表单验证插件开源了 含API帮助、源码、示例
Aug 14 Javascript
js 浏览器事件介绍
Mar 30 Javascript
window.parent与window.openner区别介绍
Apr 12 Javascript
jquery Mobile入门—外部链接切换示例代码
Jan 08 Javascript
同时使用n个window onload加载实例介绍
Apr 25 Javascript
jQuery DOM删除节点操作指南
Mar 03 Javascript
微信小程序报错:this.setData is not a function的解决办法
Sep 27 Javascript
微信小程序显示下拉列表功能【附源码下载】
Dec 12 Javascript
新手快速入门微信小程序组件库 iView Weapp
Jun 24 Javascript
jQuery三组基本动画与自定义动画操作实例总结
May 09 jQuery
JSONP 的原理、理解 与 实例分析
May 16 Javascript
Vue 实现监听窗口关闭事件,并在窗口关闭前发送请求
Sep 01 Javascript
Javascript数组中push方法用法分析
Oct 31 #Javascript
JavaScript中的await/async的作用和用法
Oct 31 #Javascript
使用 jQuery.ajax 上传带文件的表单遇到的问题
Oct 31 #Javascript
微信小程序 开发工具快捷键整理
Oct 31 #Javascript
微信小程序 实现tabs选项卡效果实例代码
Oct 31 #Javascript
HTML5基于Tomcat 7.0实现WebSocket连接并实现简单的实时聊天
Oct 31 #Javascript
jQuery绑定事件的四种方式介绍
Oct 31 #Javascript
You might like
php实现的仿阿里巴巴实现同类产品翻页
2009/12/11 PHP
php中如何使对象可以像数组一样进行foreach循环
2013/08/09 PHP
使用php记录用户通过搜索引擎进网站的关键词
2014/02/13 PHP
PHP中$_FILES的使用方法及注意事项说明
2014/02/14 PHP
Codeigniter生成Excel文档的简单方法
2014/06/12 PHP
JQuery扩展插件Validate 2通过参数设置验证规则
2011/09/05 Javascript
jQuery数组处理代码详解(含实例演示)
2012/02/03 Javascript
鼠标放在图片上显示大图的JS代码
2013/03/26 Javascript
Jquery chosen动态设置值实例介绍
2013/08/08 Javascript
提高jQuery性能的十个诀窍
2013/11/14 Javascript
使用AngularJS对路由进行安全性处理的方法
2015/06/18 Javascript
JS中mouseover和mouseout多次触发问题如何解决
2016/06/06 Javascript
JavaScript中两个字符串的匹配
2016/06/08 Javascript
利用JQuery直接调用asp.net后台的简单方法
2016/10/27 Javascript
基于js中document.cookie全面解析
2017/09/14 Javascript
ES6学习教程之模板字符串详解
2017/10/09 Javascript
Angular @HostBinding()和@HostListener()用法
2018/03/05 Javascript
简单了解JavaScript中常见的反模式
2019/06/21 Javascript
jQuery pager.js 插件动态分页功能实例分析
2019/08/02 jQuery
解决vue-router 嵌套路由没反应的问题
2020/09/22 Javascript
使用Python实现下载网易云音乐的高清MV
2015/03/16 Python
利用python求相邻数的方法示例
2017/08/18 Python
python批量替换多文件字符串问题详解
2018/04/22 Python
python3 selenium自动化 frame表单嵌套的切换方法
2019/08/23 Python
Python selenium 自动化脚本打包成一个exe文件(推荐)
2020/01/14 Python
pymysql 插入数据 转义处理方式
2020/03/02 Python
opencv之颜色过滤只留下图片中的红色区域操作
2020/06/05 Python
python 基于opencv实现图像增强
2020/12/23 Python
css3新增颜色表示方式分享
2014/04/15 HTML / CSS
canvas离屏技术与放大镜实现代码示例
2018/08/31 HTML / CSS
Superdry瑞典官网:英国日本街头风品牌
2017/05/17 全球购物
Emporio Armani腕表天猫官方旗舰店:乔治·阿玛尼为年轻人设计的副线品牌
2017/07/02 全球购物
机电一体化专业应届本科生求职信
2013/09/27 职场文书
办公室文书岗位职责
2013/12/16 职场文书
井冈山红色之旅心得体会
2014/10/07 职场文书
关于MySQL中的 like操作符详情
2021/11/17 MySQL