jQuery插件Validate实现自定义表单验证


Posted in Javascript onJanuary 18, 2016

 本文实例讲解了jQuery Validate 表单验证插件,如何自定义一个验证方法,分享给大家供大家参考,具体内容如下

效果如下:

验证失败效果:

jQuery插件Validate实现自定义表单验证

验证成功效果:

jQuery插件Validate实现自定义表单验证

具体步骤:

1、引入依赖包

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

2、添加错误样式和成功样式

em { font-weight: bold; padding-right: 1em; vertical-align: top; }
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;
}

3、自定义一个验证方法

//自定义一个验证方法
 $.validator.addMethod(
 "formula", //验证方法名称
 function(value, element, param) {//验证规则
 return value == eval(param);
 }, 
 '请正确输入数学公式计算后的结果'//验证提示信息
 );

4、调用样式显示

errorElement: "em",  //用来创建错误提示信息标签
 success: function(label) {  //验证成功后的执行的回调函数
  //label指向上面那个错误提示信息标签em
  label.text(" ")  //清空错误提示消息
  .addClass("success"); //加上自定义的success类
 }

5、详细代码如下

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jQuery表单验证插件----自定义一个验证方法</title>
 <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
 <script src="lib/jquery.validate.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; }
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;
}



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

 //自定义一个验证方法
 $.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: '请输入您的评论'
 }, 
 
 errorElement: "em",  //用来创建错误提示信息标签
 success: function(label) {  //验证成功后的执行的回调函数
  //label指向上面那个错误提示信息标签em
  label.text(" ")  //清空错误提示消息
  .addClass("success"); //加上自定义的success类
 }


 });

 });
 </script>
 
</head>
<body>
 

 <form class="cmxform" id="commentForm" method="get" action="">
 <fieldset>
 <legend>jQuery表单验证插件----自定义一个验证方法</legend>
 <p>
 <label for="cusername">姓名</label>
 <em>*</em><input id="cusername" name="username" size="25" />
 </p>
 <p>
 <label for="cemail">电子邮件</label>
 <em>*</em><input id="cemail" name="email" size="25" />
 </p>
 <p>
 <label for="curl">网址</label>
 <em> </em><input id="curl" name="url" size="25" value="" />
 </p>
 <p>
 <label for="ccomment">你的评论</label>
 <em>*</em><textarea id="ccomment" name="comment" cols="22"></textarea>
 </p>
 <p>
 <label for="cvalcode">验证码</label>
 <input id="cvalcode" name="valcode" size="25" value="" />=7+9
 </p>
 <p>
 <input class="submit" type="submit" value="提交"/>
 </p>
 </fieldset>
 </form>
</body>
</html>

本文已被整理到了《jquery表单验证大全》 ,欢迎大家学习阅读。

以上就是本文的全部内容,希望对大家学习表单验证有所帮助。

Javascript 相关文章推荐
ExtJs纵坐标值重复问题的解决方法
Feb 27 Javascript
JS二维数组的定义说明
Mar 03 Javascript
实现网页页面跳转的几种方法(meta标签、js实现、php实现)
May 20 Javascript
JSON+Jquery省市区三级联动
Jan 13 Javascript
基于Vuejs框架实现翻页组件
Jun 29 Javascript
JS中cookie的使用及缺点讲解
May 13 Javascript
js截取字符串功能的实现方法
Sep 27 Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
Oct 26 Javascript
纯js封装的ajax功能函数与用法示例
May 14 Javascript
从0到1搭建Element的后台框架的方法步骤
Apr 10 Javascript
小谈angular ng deploy的实现
Apr 07 Javascript
解决Vue-Router升级导致的Uncaught (in promise)问题
Aug 07 Javascript
Jquery和angularjs获取check框选中的值的方法汇总
Jan 17 #Javascript
node.js+express制作网页计算器
Jan 17 #Javascript
JQuery实现网页右侧随动广告特效
Jan 17 #Javascript
Validform+layer实现漂亮的表单验证特效
Jan 17 #Javascript
javascript实现倒计时跳转页面
Jan 17 #Javascript
jQuery实现图片走马灯效果的原理分析
Jan 16 #Javascript
JavaScript时间操作之年月日星期级联操作
Jan 15 #Javascript
You might like
php+oracle 分页类
2006/10/09 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
2014/07/12 PHP
关于URL最大长度限制的相关资料查证
2014/12/23 PHP
Yii2主题(Theme)用法详解
2016/07/23 PHP
基于thinkPHP3.2实现微信接入及查询token值的方法
2017/04/18 PHP
jquery插件制作 自增长输入框实现代码
2012/08/17 jQuery
jQuery获取上传文件的名称的正则表达式
2015/05/21 Javascript
js实现图片淡入淡出切换简易效果
2016/08/22 Javascript
javascript实现数据双向绑定的三种方式小结
2017/03/09 Javascript
Vue前端开发规范整理(推荐)
2018/04/23 Javascript
vue实现移动端轻量日期组件不依赖第三方库的方法
2019/04/28 Javascript
JavaScript面向对象编程小游戏---贪吃蛇代码实例
2019/05/15 Javascript
JS实现“全选”和&quot;全不选&quot;功能代码实例
2020/02/06 Javascript
javascript开发实现贪吃蛇游戏
2020/07/31 Javascript
vant 自定义 van-dropdown-item的用法
2020/08/05 Javascript
antd vue 刷新保留当前页面路由,保留选中菜单,保留menu选中操作
2020/08/06 Javascript
[45:18]2018DOTA2亚洲邀请赛 4.3 突围赛 Optic vs iG 第一场
2018/04/04 DOTA
Python中MYSQLdb出现乱码的解决方法
2014/10/11 Python
Python调用微信公众平台接口操作示例
2017/07/08 Python
Pandas 数据框增、删、改、查、去重、抽样基本操作方法
2018/04/12 Python
Python对象中__del__方法起作用的条件详解
2018/11/01 Python
Python使用pyshp库读取shapefile信息的方法
2018/12/29 Python
python 阶乘累加和的实例
2019/02/01 Python
用Python开发app后端有优势吗
2020/06/29 Python
Python getattr()函数使用方法代码实例
2020/08/10 Python
vscode+PyQt5安装详解步骤
2020/08/12 Python
python 基于PYMYSQL使用MYSQL数据库
2020/12/24 Python
Agoda台湾官网:国内外订房2折起
2018/03/20 全球购物
毕业生的自我评价范文
2013/12/31 职场文书
心理健康心得体会
2014/01/02 职场文书
尽职尽责村干部自我鉴定
2014/01/23 职场文书
环保建议书300字
2014/05/14 职场文书
财务部会计岗位职责
2015/02/03 职场文书
2015年安全教育月活动总结
2015/03/26 职场文书
入党介绍人意见范文
2015/06/01 职场文书
MySQL中的布尔值,怎么存储false或true
2021/06/04 MySQL