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 相关文章推荐
再谈IE中Flash控件的自动激活 ObjectWrap
Mar 09 Javascript
关于图片按比例自适应缩放的js代码
Oct 30 Javascript
js 自制滚动条的小例子
Mar 16 Javascript
js面向对象编程总结
Feb 16 Javascript
Node.js利用js-xlsx处理Excel文件的方法详解
Jul 05 Javascript
原生JavaScript来实现对dom元素class的操作方法(推荐)
Aug 16 Javascript
快速解决vue-cli在ie9+中无效的问题
Sep 04 Javascript
vue根据进入的路由进行原路返回的方法
Sep 26 Javascript
vue component 中引入less文件报错 Module build failed
Apr 17 Javascript
js页面加载后执行的几种方式小结
Jan 30 Javascript
Vue初始化中的选项合并之initInternalComponent详解
Jun 11 Javascript
解决ant Design中Select设置initialValue时的大坑
Oct 29 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 类相关函数的使用详解
2013/05/10 PHP
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
2014/10/21 PHP
PHP中使用break跳出多重循环代码实例
2015/01/21 PHP
php封装的mongodb操作类代码
2017/08/06 PHP
php判断电子邮件是否正确方法
2018/12/04 PHP
extjs fckeditor集成代码
2009/05/10 Javascript
深入理解JavaScript系列(7) S.O.L.I.D五大原则之开闭原则OCP
2012/01/15 Javascript
动态加载script文件的两种方法
2013/08/15 Javascript
sogou地图API用法实例教程
2014/09/11 Javascript
JS+CSS实现分类动态选择及移动功能效果代码
2015/10/19 Javascript
jQuery实现放大镜效果实例代码
2016/03/17 Javascript
原生js三级联动的简单实现代码
2016/06/07 Javascript
详解jQuery的Cookie插件
2016/11/23 Javascript
Angular2 之 路由与导航详细介绍
2017/05/26 Javascript
javascript实现二叉树遍历的代码
2017/06/08 Javascript
jQuery实现手机号正则验证输入及自动填充空格功能
2018/01/02 jQuery
angularjs下ng-repeat点击元素改变样式的实现方法
2018/09/12 Javascript
深入浅出 Vue 系列 -- 数据劫持实现原理
2019/04/23 Javascript
微信小程序 组件的外部样式externalClasses使用详解
2019/09/06 Javascript
快速解决layui弹窗按enter键不停弹窗的问题
2019/09/18 Javascript
vue项目接口域名动态获取操作
2020/08/13 Javascript
[05:03]显微镜下的DOTA2第十期——Ti3豪之超神幽鬼
2014/06/23 DOTA
Python中转换角度为弧度的radians()方法
2015/05/18 Python
Python基础之getpass模块详细介绍
2017/08/10 Python
Zookeeper接口kazoo实例解析
2018/01/22 Python
python opencv之SURF算法示例
2018/02/24 Python
Python 写入训练日志文件并控制台输出解析
2019/08/13 Python
python pyinstaller打包exe报错的解决方法
2019/11/02 Python
关于tf.reverse_sequence()简述
2020/01/20 Python
Python selenium页面加载慢超时的解决方案
2020/03/18 Python
临床医学专业毕业生的自我评价
2013/10/17 职场文书
互联网电子商务专业毕业生求职信
2014/03/18 职场文书
对孩子的寄语
2014/04/09 职场文书
2016新党章学习心得体会
2016/01/15 职场文书
MySQL 自定义变量的概念及特点
2021/05/13 MySQL
Nginx配置Https安全认证的实现
2021/05/26 Servers