快速学习jQuery插件 jquery.validate.js表单验证插件使用方法


Posted in Javascript onDecember 01, 2015

最常使用JavaScript的场合就是表单的验证,而jQuery作为一个优秀的JavaScript库,也提供了一个优秀的表单验证插件----Validation。Validation是历史最悠久的jQuery插件之一,经过了全球范围内不同项目的验证,并得到了许多Web开发者的好评。作为一个标准的验证方法库,Validation拥有如下特点:

  • 1.内置验证规则: 拥有必填、数字、Email、URL和信用卡号码等19类内置验证规则
  • 2.自定义验证规则: 可以很方便地自定义验证规则
  • 3.简单强大的验证信息提示: 默认了验证信息提示,并提供自定义覆盖默认的提示信息的功能
  • 4.实时验证: 可能通过keyup或blur事件触发验证,而不仅仅在表单提交的时候验证

使用方法:
1.引入jQuery库和Validation插件

<script src="scripts/jquery-1.6.4.js" type="text/javascript"></script> 
<script src="scripts/jquery.validate.js" type="text/javascript"></script>

2.确定哪个表单需要被验证

<script type="text/javascript"> 
////<![CDATA[ 
$(document).ready(function(){ 
  $("#commentForm").validate(); 
}); 
//]]> 
</script>

3.针对不同的字段,进行验证规则编码,设置字段相应的属性

class="required"  必须填写 
class="required email"    必须填写且内容符合Email格式验证 
class="url"       符合URL格式验证 
minlength="2"   最小长度为2

可验证的规则有19种:
required:      必选字段 
remote:        "请修正该字段", 
email:         电子邮件验证 
url:           网址验证 
date:          日期验证 
dateISO:       日期 (ISO)验证 
dateDE: 
number:        数字验证 
numberDE: 
digits:       
只能输入整数 
creditcard:    信用卡号验证 
equalTo:       “请再次输入相同的值”验证 
accept:        拥有合法后缀名的字符串验证 
maxlength/minlength:    最大/最小长度验证 
rangelength:     字符串长度范围验证 
range:           数字范围验证 
max/min:         最大值/最小值验证 
另个一种验证方法(将所有的与验证相关的信息写到class属性中方便管理)
1).引入一个新的jQuery插件---jquery.metadata.js(支持固定格式解析的jQuery插件)

<script src="scripts/jquery.metadata.js" type="text/javascript"></script> 

2).改变调用的验证方法
<script type="text/javascript"> 
////<![CDATA[ 
$(document).ready(function(){ 
  //将$("#commentForm").validate(); 改成 
  $("#commentForm").validate({meta: "validate"}); 
}); 
//]]> 
</script>

3).将验证规则全部编写到class属性中

class="{validate:{required: true, minlength: 2, messages:{required:'请输入姓名', minlength:'请至少输入两个字符'}}}" 
class="{validate:{required: true, email: true, messages:{required:'请输入电子邮件', email:'请检查电子邮件的格式'}}}"

也可以通过name属性来关联字段和验证规则的验证写法(验证行为和HTML结构完全脱钩)

$("#commentForm").validate({ 
  rules: { 
   username: { 
     required: true, 
     minlength: 2 
   }, 
   email: { 
     required: true, 
     email: true 
   }, 
   url:"url", 
   comment: "required" 
  }, 
  messages: { 
   username: { 
     required: '请输入姓名', 
     minlength: '请至少输入两个字符' 
   }, 
   email: { 
     required: '请输入电子邮件', 
     email: '请检查电子邮件的格式' 
   }, 
   url: '请检查网址的格式', 
   comment: '请输入您的评论' 
  } 
});

国际化
Validation插件的验证信息默认语言是英文,如果要改成中文,只需要引入Validation提供的中文验证信息即可,引入代码如下:

<script src="scripts/jquery.validate.messages_cn.js" type="text/javascript"></script> 

自定义验证信息并美化
errorElement: "em",        //可以用其他标签,记住把样式也对应修改 
success: function(label) {  //label指向上面那个错误提示信息标签em 
   label.text("")            //清空错误提示消息 
       .addClass("success");  //加上自定义的success类 
   } 
在CSS中添加样式与之关联 
em.error { 
   background:url("images/unchecked.gif") no-repeat 0px 0px; 
   padding-left: 16px; 
} 
em.success { 
   background:url("images/checked.gif") no-repeat 0px 0px; 
   padding-left: 16px; 
}

自定义验证规则

//自定义一个验证方法 
$.validator.addMethod( 
  "formula", //验证方法名称 
  function(value, element, param) {//验证规则 
    return value == eval(param); 
  },  
  '请正确输入数学公式计算后的结果'//验证提示信息 
); 
 
$("#commentForm").validate({ 
  rules: { 
   username: { 
     required: true, 
     minlength: 2 
   }, 
   email: { 
     required: true, 
     email: true 
   }, 
   url:"url", 
   comment: "required", 
   valcode: { 
     formula: "7+9" 
   } 
  }, 
  messages: { 
   username: { 
     required: '请输入姓名', 
     minlength: '请至少输入两个字符' 
   }, 
   email: { 
     required: '请输入电子邮件', 
     email: '请检查电子邮件的格式' 
   }, 
   url: '请检查网址的格式', 
   comment: '请输入您的评论', 
   valcode: '验证码错误' 
  } 
});

以上就是关于表单验证插件jquery.validate.js的详细介绍,希望对大家的学习有所帮助。

Javascript 相关文章推荐
JavaScript 申明函数的三种方法 每个函数就是一个对象(一)
Dec 04 Javascript
js限制文本框为整数和货币的函数代码
Oct 13 Javascript
Javascript 面向对象编程(coolshell)
Mar 18 Javascript
如何在一个页面显示多个百度地图
Apr 07 Javascript
JS/FLASH实现复制代码到剪贴板(兼容所有浏览器)
May 27 Javascript
将Datatable转化成json发送前台实现思路
Sep 06 Javascript
javascript替换已有元素replaceChild()使用介绍
Apr 03 Javascript
javascript定义变量时有var和没有var的区别探讨
Jul 21 Javascript
javascript获取wx.config内部字段解决微信分享
Mar 09 Javascript
Vue学习笔记进阶篇之过渡状态详解
Jul 14 Javascript
微信小程序和百度的语音识别接口详解
May 06 Javascript
vue中template的三种写法示例
Oct 21 Javascript
JavaScript使用DeviceOne开发实战(二) 生成调试安装包
Dec 01 #Javascript
JavaScript使用DeviceOne开发实战(一) 配置和起步
Dec 01 #Javascript
快速学习jQuery插件 Form表单插件使用方法
Dec 01 #Javascript
jQuery学习笔记之Ajax用法实例详解
Dec 01 #Javascript
易操作的jQuery表单提示插件
Dec 01 #Javascript
JavaScript保留关键字汇总
Dec 01 #Javascript
轻松学习jQuery插件EasyUI EasyUI表单验证
Dec 01 #Javascript
You might like
Syphon 秘笈
2021/03/03 冲泡冲煮
PHP4和PHP5性能测试和对比 测试代码与环境
2007/08/17 PHP
PHP小程序自动提交到自助友情连接
2009/11/24 PHP
解析php中两种缩放图片的函数,为图片添加水印
2013/06/14 PHP
借用Google的Javascript API Loader来加速你的网站
2009/01/28 Javascript
20款效果非常棒的 jQuery 插件小结分享
2011/11/18 Javascript
javascript 全选与全取消功能的实现代码
2012/12/23 Javascript
S2SH整合JQuery+Ajax实现登录验证功能实现代码
2013/01/30 Javascript
JS中的this变量的使用介绍
2013/10/21 Javascript
js取消单选按钮选中并判断对象是否为空
2013/11/14 Javascript
jQuery源码分析之init的详细介绍
2017/02/13 Javascript
JavaScript实现瀑布流图片效果
2017/06/30 Javascript
让你彻底掌握es6 Promise的八段代码
2017/07/26 Javascript
Thinkjs3新手入门之如何使用静态资源目录
2017/12/06 Javascript
webpack 3.X学习之多页面打包的方法
2018/09/04 Javascript
vue-cli3中vue.config.js配置教程详解
2019/05/29 Javascript
vue用BMap百度地图实现即时搜索功能
2019/09/26 Javascript
vue2和vue3的v-if与v-for优先级对比学习
2020/10/10 Javascript
如何在vue中使用video.js播放m3u8格式的视频
2021/02/01 Vue.js
利用Python实现在同一网络中的本地文件共享方法
2018/06/04 Python
Python生成器的使用方法和示例代码
2019/03/04 Python
Python使用os.listdir()和os.walk()获取文件路径与文件下所有目录的方法
2019/04/01 Python
Python中函数的基本定义与调用及内置函数详解
2019/05/13 Python
Python代码一键转Jar包及Java调用Python新姿势
2020/03/10 Python
python中strip(),lstrip(),rstrip()函数的使用讲解
2020/11/17 Python
韩国江南富人区高端时尚百货商场:Galleria(格乐丽雅)
2018/03/27 全球购物
意大利拉斐尔时尚购物网:Raffaello Network(支持中文)
2018/11/09 全球购物
Linux的文件类型
2012/03/07 面试题
家长会学生家长演讲稿
2013/12/29 职场文书
报关员个人职业生涯规划书
2014/03/12 职场文书
毕业自我鉴定书
2014/03/24 职场文书
离婚协议书范本(通用篇)
2014/11/30 职场文书
中标通知书格式
2015/04/17 职场文书
《秦兵马俑》教学反思
2016/02/24 职场文书
世界十大评分最高的动漫,CLANNAD上榜,第八赚足人们眼泪
2022/03/18 日漫
教你部署vue项目到docker
2022/04/05 Vue.js