深入学习jQuery Validate表单验证


Posted in Javascript onJanuary 18, 2016

本文实例介绍了jQuery Validate表单验证,主要是利用jquery.metadata.js将校验规则直接写在class属性里面并定义错误信息的提示,分享给大家供大家参考,具体内容如下

1、添加一个另外一个插件jquery.metadata.js 并把校验规则写在控件里面。
2、需要改写触发校验的方式。

$("#commentForm").validate({meta: "validate"});

3、详细代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>jQuery表单验证插件----利用jquery.metadata.js将校验规则写到控件中</title>
 <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
 <script src="lib/jquery.validate.js" type="text/javascript"></script>
<script src="lib/jquery.metadata.js" type="text/javascript"></script>
<style type="text/css">
* { font-family: Verdana; font-size: 96%; }
label { width: 10em; float: left; }
label.error { float: none; color: red; padding-left: .5em; vertical-align: top; }
p { clear: both; }
.submit { margin-left: 12em; }
em { font-weight: bold; padding-right: 1em; vertical-align: top; }
</style>
 <script type="text/javascript">
 $(document).ready(function(){

   $("#commentForm").validate({meta: "validate"});
  
 });
 </script>
 
</head>
<body>
 

 <form class="cmxform" id="commentForm" method="get" action="">
 <fieldset>
  <legend>jQuery表单验证插件----利用jquery.metadata.js将校验规则写到控件中</legend>
  <p>
   <label for="cusername">姓名</label>
   <em>*</em><input id="cusername" name="username" size="25" class="{validate:{required:true, minlength:2}}" />
  </p>
  <p>
   <label for="cemail">电子邮件</label>
   <em>*</em><input id="cemail" name="email" size="25"  class="{validate:{required:true, email:true}}" />
  </p>
  <p>
   <label for="curl">网址</label>
   <em> </em><input id="curl" name="url" size="25" value=""  class="{validate:{url:true}}" />
  </p>
  <p>
   <label for="ccomment">你的评论</label>
   <em>*</em><textarea id="ccomment" name="comment" cols="22" class="{validate:{required:true}}" ></textarea>
  </p>
  <p>
   <input class="submit" type="submit" value="提交"/>
  </p>
 </fieldset>
 </form>
</body>
</html>

默认校验规则:

  • (1)required:true               必输字段
  • (2)remote:"check.php"          使用ajax方法调用check.php验证输入值
  • (3)email:true                  必须输入正确格式的电子邮件
  • (4)url:true                    必须输入正确格式的网址
  • (5)date:true                   必须输入正确格式的日期 日期校验ie6出错,慎用
  • (6)dateISO:true                必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22 只验证格式,不验证有效性
  • (7)number:true                 必须输入合法的数字(负数,小数)
  • (8)digits:true                 必须输入整数
  • (9)creditcard:                 必须输入合法的信用卡号
  • (10)equalTo:"#field"           输入值必须和#field相同
  • (11)accept:                    输入拥有合法后缀名的字符串(上传文件的后缀)
  • (12)maxlength:5                输入长度最多是5的字符串(汉字算一个字符)
  • (13)minlength:10               输入长度最小是10的字符串(汉字算一个字符)
  • (14)rangelength:[5,10]         输入长度必须介于 5 和 10 之间的字符串")(汉字算一个字符)
  • (15)range:[5,10]               输入值必须介于 5 和 10 之间
  • (16)max:5                      输入值不能大于5
  • (17)min:10                     输入值不能小于10

默认提示:

messages: {
  required: "This field is required.",
  remote: "Please fix this field.",
  email: "Please enter a valid email address.",
  url: "Please enter a valid URL.",
  date: "Please enter a valid date.",
  dateISO: "Please enter a valid date (ISO).",
  dateDE: "Bitte geben Sie ein g眉ltiges Datum ein.",
  number: "Please enter a valid number.",
  numberDE: "Bitte geben Sie eine Nummer ein.",
  digits: "Please enter only digits",
  creditcard: "Please enter a valid credit card number.",
  equalTo: "Please enter the same value again.",
  accept: "Please enter a value with a valid extension.",
  maxlength: $.validator.format("Please enter no more than {0} characters."),
  minlength: $.validator.format("Please enter at least {0} characters."),
  rangelength: $.validator.format("Please enter a value between {0} and {1} characters long."),
  range: $.validator.format("Please enter a value between {0} and {1}."),
  max: $.validator.format("Please enter a value less than or equal to {0}."),
  min: $.validator.format("Please enter a value greater than or equal to {0}.")
},

4、效果图如下:

深入学习jQuery Validate表单验证

5、注意:
使用 class="{}" 的方式,必须引入包:jquery.metadata.js。
可以使用如下的方法,修改提示内容:

class="{required:true,minlength:5,messages:{required:'请输入内容'}}"

在使用 equalTo 关键字时,后面的内容必须加上引号,代码如下所示:

class="{required:true,minlength:5,equalTo:'#password'}"

6、直接在class属性里面定义错误信息的提示。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jQuery表单验证插件----利用jquery.metadata.js将校验规则写到控件中(2)</title>
 <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
 <script src="lib/jquery.validate.js" type="text/javascript"></script>
<script src="lib/jquery.metadata.js" type="text/javascript"></script>
<style type="text/css">
* { font-family: Verdana; font-size: 96%; }
label { width: 10em; float: left; }
label.error { float: none; color: red; padding-left: .5em; vertical-align: top; }
p { clear: both; }
.submit { margin-left: 12em; }
em { font-weight: bold; padding-right: 1em; vertical-align: top; }
</style>

 <script type="text/javascript">
 $(document).ready(function(){

   $("#commentForm").validate({meta: "validate"});
  
 });
 </script>
 
</head>
<body>
 

 <form class="cmxform" id="commentForm" method="get" action="">
 <fieldset>
  <legend>jQuery表单验证插件----利用jquery.metadata.js将校验规则写到控件中(2)</legend>
  <p>
   <label for="cusername">姓名</label>
   <em>*</em><input id="cusername" name="username" size="25" class="{validate:{required:true, minlength:2, messages:{required:'请输入姓名', minlength:'请至少输入两个字符'}}}" />
  </p>
  <p>
   <label for="cemail">电子邮件</label>
   <em>*</em><input id="cemail" name="email" size="25"  class="{validate:{required:true, email:true, messages:{required:'请输入电子邮件', email:'请检查电子邮件的格式'}}}" />
  </p>
  <p>
   <label for="curl">网址</label>
   <em> </em><input id="curl" name="url" size="25" value=""  class="{validate:{url:true, messages:{url:'请检查网址的格式'}}}" />
  </p>
  <p>
   <label for="ccomment">你的评论</label>
   <em>*</em><textarea id="ccomment" name="comment" cols="22" class="{validate:{required:true, messages:{required:'请输入您的评论'}}}" ></textarea>
  </p>
  <p>
   <input class="submit" type="submit" value="提交"/>
  </p>
 </fieldset>
 </form>
</body>
</html>

7、效果如下:

 深入学习jQuery Validate表单验证

以上就是本文的全部内容,希望对大家学习jQuery Validate表单验证有所帮助,最近更新了不少关于jQuery Validate表单验证的文章,大家可以结合进行学习。

Javascript 相关文章推荐
JQuery中DOM事件合成用法实例分析
Jun 13 Javascript
使用jspdf生成pdf报表
Jul 03 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
Aug 05 Javascript
js弹出窗口返回值的简单实例
May 28 Javascript
js canvas仿支付宝芝麻信用分仪表盘
Nov 16 Javascript
AngularJS中$injector、$rootScope和$scope的概念和关联关系深入分析
Jan 19 Javascript
使用Browserify来实现CommonJS的浏览器加载方法
May 14 Javascript
Vue 中使用 CSS Modules优雅方法
Apr 09 Javascript
linux 后台运行node服务指令方法
May 23 Javascript
使用JS判断移动端手机横竖屏状态
Jul 30 Javascript
少女风vue组件库的制作全过程
May 15 Javascript
vue实现登陆页面开发实践
May 30 Vue.js
jQuery Validate表单验证插件 添加class属性形式的校验
Jan 18 #Javascript
图片旋转、鼠标滚轮缩放、镜像、切换图片js代码
Dec 13 #Javascript
理解JavaScript中Promise的使用
Jan 18 #Javascript
你不知道的高性能JAVASCRIPT
Jan 18 #Javascript
Ionic实现仿通讯录点击滑动及$ionicscrolldelegate使用分析
Jan 18 #Javascript
jQuery实现多级联动下拉列表查询框
Jan 18 #Javascript
jquery validate表单验证的基本用法入门
Jan 18 #Javascript
You might like
查找php配置文件php.ini所在路径的二种方法
2014/05/26 PHP
使用PHPMailer实现邮件发送代码分享
2014/10/23 PHP
ThinkPHP框架实现的MySQL数据库备份功能示例
2018/05/24 PHP
php抽象类和接口知识点整理总结
2019/08/02 PHP
jQuery中的常用事件总结
2009/12/27 Javascript
JavaScript prototype属性使用说明
2010/05/13 Javascript
jquery实现手机发送验证码的倒计时代码
2014/02/12 Javascript
JS实现两表格里数据来回转移的方法
2015/05/28 Javascript
JavaScript中setUTCMilliseconds()方法的使用详解
2015/06/12 Javascript
Bootstrap编写一个兼容主流浏览器的受众门户式风格页面
2016/07/01 Javascript
vue实现可增删查改的成绩单
2016/10/27 Javascript
关于Function中的bind()示例详解
2016/12/02 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
解决vue处理axios post请求传参的问题
2018/03/05 Javascript
使用validate.js实现表单数据提交前的验证方法
2018/09/04 Javascript
VUE 实现复制内容到剪贴板的两种方法
2019/04/24 Javascript
如何在JavaScript中谨慎使用代码注释
2019/06/21 Javascript
layui实现数据表格点击搜索功能
2020/03/26 Javascript
使用 Opentype.js 生成字体子集的实例代码详解
2020/05/25 Javascript
微信小程序实现身份证取景框拍摄
2020/09/09 Javascript
使用python爬虫实现网络股票信息爬取的demo
2018/01/05 Python
python2.7和NLTK安装详细教程
2018/09/19 Python
Python tkinter的grid布局及Text动态显示方法
2018/10/11 Python
python爬虫添加请求头代码实例
2019/12/28 Python
Python爬虫headers处理及网络超时问题解决方案
2020/06/19 Python
快速解决pymongo操作mongodb的时区问题
2020/12/05 Python
如何使用css3实现一个类在线直播的队列动画的示例代码
2020/06/17 HTML / CSS
HTML5输入框下拉菜单功能的示例代码
2020/09/08 HTML / CSS
英国鲜花递送:Blossoming Gifts
2020/07/10 全球购物
艺术设计专业个人求职信
2013/09/21 职场文书
干部行政关系介绍信
2014/01/17 职场文书
教师节促销活动方案
2014/02/14 职场文书
初中重阳节活动总结
2015/05/05 职场文书
详解Python魔法方法之描述符类
2021/05/26 Python
Python预测分词的实现
2021/06/18 Python
SpringBoot 整合mongoDB并自定义连接池的示例代码
2022/02/28 MongoDB