基于Bootstrap jQuery.validate Form表单验证实践

项目结构 :
 
 
github 上源码地址:https://github.com/starzou/front-end-example    点击打开
 

1、form 表单代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Bootstrap Form Template</title>
  5. <meta charset="utf-8" />
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <link rel="stylesheet" type="text/css" href="plugins/bootstrap/css/bootstrap.css"/>
  8. </head>
  9. <body>
  10. <div class="container">
  11. <h1 class="text-center text-danger">Form 示例</h1>
  12. <form role="form" class="form-horizontal" action="javascript:alert('验证成功,可以提交.');" method="post">
  13. <div class="form-group">
  14. <label class="col-md-2 control-label" for="name">Name</label>
  15. <div class="col-md-10">
  16. <input class="form-control" name="name" type="text" id="name" placeholder="Name" value="" />
  17. </div>
  18. </div>
  19. <div class="form-group">
  20. <label class="col-md-2 control-label" for="exampleInputPassword1">Password</label>
  21. <div class="col-md-10">
  22. <input type="password" name="password" class="form-control" id="exampleInputPassword1" placeholder="Password">
  23. </div>
  24. </div>
  25. <div class="form-group">
  26. <label for="intro" class="control-label col-md-2">Intro</label>
  27. <div class="col-md-10">
  28. <textarea id="intro" class="form-control" rows="3" name="intro" placeholder="Intro"></textarea>
  29. </div>
  30. </div>
  31. <div class="form-group">
  32. <label class="control-label col-md-2">Gender</label>
  33. <div class="col-md-10">
  34. <label class="radio-inline">
  35. <input type="radio" name="gender"  value="男" />
  36. boy </label>
  37. <label class="radio-inline">
  38. <input type="radio" name="gender"  value="女" />
  39. gril </label>
  40. </div>
  41. </div>
  42. <div class="form-group">
  43. <label for="hobby" class="control-label col-md-2">Hobby</label>
  44. <div class="col-md-10">
  45. <div class="checkbox">
  46. <label>
  47. <input type="checkbox" name="hobby" value="Music">
  48. Music</label>
  49. </div>
  50. <div class="checkbox">
  51. <label>
  52. <input type="checkbox" name="hobby" id="" value="Game" />
  53. Game </label>
  54. </div>
  55. <label class="checkbox-inline">
  56. <input type="checkbox" id="inlineCheckbox1" value="option1">
  57. option1 </label>
  58. <label class="checkbox-inline">
  59. <input type="checkbox" id="inlineCheckbox2" value="option2">
  60. option3</label>
  61. <label class="checkbox-inline">
  62. <input type="checkbox" id="inlineCheckbox3" value="option3">
  63. option3 </label>
  64. </div>
  65. </div>
  66. <div class="form-group">
  67. <label for="sel" class="control-label col-md-2">Select</label>
  68. <div class="col-md-10">
  69. <select multiple="" id="sel" name="sel" class="form-control">
  70. <option value="1">1</option>
  71. <option value="2">2</option>
  72. <option value="3">3</option>
  73. </select>
  74. </div>
  75. </div>
  76. <div class="form-group">
  77. <div class="col-md-offset-2 col-md-10">
  78. <button type="submit" class="btn btn-primary btn-sm">
  79. Submit
  80. </button>
  81. <button type="reset" class="btn btn-primary btn-sm">
  82. Reset
  83. </button>
  84. </div>
  85. </div>
  86. </form>
  87. </div>
  88. <script src="plugins/jquery-1.11.1.js" type="text/javascript" charset="utf-8"></script>
  89. <script src="plugins/bootstrap/js/bootstrap.js" type="text/javascript" charset="utf-8"></script>
  90. <script src="plugins/jquery-validation/dist/jquery.validate.js" type="text/javascript" charset="utf-8"></script>
  91. <script src="scripts/form.js" type="text/javascript" charset="utf-8"></script>
  92. <script type="text/javascript" charset="utf-8">
  93. MyValidator.init();
  94. </script>
  95. </body>
  96. </html>

需要引用 jquery.js,bootstrap.js,jquery.validate.js 库

 

2、form.js 代码

  1. var MyValidator = function() {
  2. var handleSubmit = function() {
  3. $('.form-horizontal').validate({
  4. errorElement : 'span',
  5. errorClass : 'help-block',
  6. focusInvalid : false,
  7. rules : {
  8. name : {
  9. required : true
  10. },
  11. password : {
  12. required : true
  13. },
  14. intro : {
  15. required : true
  16. }
  17. },
  18. messages : {
  19. name : {
  20. required : "Username is required."
  21. },
  22. password : {
  23. required : "Password is required."
  24. },
  25. intro : {
  26. required : "Intro is required."
  27. }
  28. },
  29. highlight : function(element) {
  30. $(element).closest('.form-group').addClass('has-error');
  31. },
  32. success : function(label) {
  33. label.closest('.form-group').removeClass('has-error');
  34. label.remove();
  35. },
  36. errorPlacement : function(error, element) {
  37. element.parent('div').append(error);
  38. },
  39. submitHandler : function(form) {
  40. form.submit();
  41. }
  42. });
  43. $('.form-horizontal input').keypress(function(e) {
  44. if (e.which == 13) {
  45. if ($('.form-horizontal').validate().form()) {
  46. $('.form-horizontal').submit();
  47. }
  48. return false;
  49. }
  50. });
  51. }
  52. return {
  53. init : function() {
  54. handleSubmit();
  55. }
  56. };
  57. }();
 

效果 :

基于Bootstrap+jQuery.validate Form表单验证实践的更多相关文章

  1. 基于Jquery Validate 的表单验证

    基于Jquery Validate 的表单验证 jquery.validate.js是jquery下的一个验证插件,运用此插件我们可以很便捷的对表单元素进行格式验证. 在讲述基于Jquery Vali ...

  2. 异步提交form的时候利用jQuery validate实现表单验证

    异步提交form的时候利用jQuery validate实现表单验证相信很多人都用过jquery validate插件,非常好用,并且可以通过下面的语句来自定义验证规则    // 电话号码验证    ...

  3. Jquery.validate.js表单验证插件的使用

    作为一个网站web开发人员,以前居然不知道还有表单验证这样好呀的插件,还在一行行写表单验证,真是后悔没能早点知道他们的存在. 最近公司不忙,自己学习一些东西的时候,发现了validation的一个实例 ...

  4. jQuery.validate.js表单验证插件

    jQuery.validate.js表单验证插件的使用 效果: 代码: <!DOCTYPE html> <html lang="en"> <head& ...

  5. jquery.validate.js 表单验证简单用法

    引入jquery.validate.js插件以及Jquery,在最后加上这个插件的方法名来引用.$('form').validate(); <!DOCTYPE html PUBLIC " ...

  6. jquery.validate.js表单验证 jquery.validate.js的用法

    jquery.validate.js这个插件已经用了2年多了,是一个不可多得的表单验证最方便快捷的插件.基于jquery的小插件,基本小白一学就会上手,对于项目表单页面比较多,元素比较多的校验,该插件 ...

  7. jquery.validate.js表单验证

    一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...

  8. 表单验证代码实例:jquery.validate.js表单验证插件

    jquery.validate.js是JQuery旗下的一个验证插件,借助JQuery的优势,我们可以迅速验证一些常见的输入,并且可以自己扩充自己的验证方法.使用前请先下载必要的JQuery插件:jq ...

  9. jQuery Validate 插件[表单验证]

    在客户端添加信息提交表单时我们经常需要做一些验证,比如验证不能为空,验证客户输入手机格式,验证客户输入email,url等的格式,我们可以通过EL表达式结合js 进行自主验证,今天总结一个JQuery ...

随机推荐

  1. Wannafly 22A

    题解 另g = gcd(a1,a2,a3....) 那么k * g % m的方案书就是答案 这个式子子显然是有循环节的 x * g = 0 mod m ,x * g + y * m = 0 exgcd ...

  2. 2977 二叉堆练习1 codevs

    题目描述 Description 已知一个二叉树,判断它是否为二叉堆(小根堆) 输入描述 Input Description 二叉树的节点数N和N个节点(按层输入) 输出描述 Output Descr ...

  3. UVALive 7146 (贪心+少许数据结构基础)2014acm/icpc区域赛上海站

    这是2014年上海区域赛的一道水题.请原谅我现在才发出来,因为我是在太懒了.当然,主要原因是我刚刚做出来. 其实去年我就已经看到这道题了,因为我参加的就是那一场.但是当时我们爆零,伤心的我就再也没有看 ...

  4. HDU 5839 Special Tetrahedron 计算几何

    Special Tetrahedron 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5839 Description Given n points ...

  5. 使用 IntraWeb (20) - 基本控件之 TIWGrid

    TIWGrid 最终通过 Html Table 呈现; 其每个 Cell 都是一个 TIWGridCell 对象, Cell 对象的 Control 属性非常好, 可以非常方便地嵌入其他控件. TIW ...

  6. tomcat开启SSL8443端口的方法

    参考文献: http://tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html http://blog.sina.com.cn/s/blog_682b5aa1 ...

  7. 没有可用的复制构造函数或复制构造函数声明为“explicit”

           c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\vector(810) : error C2558: str ...

  8. ASP.NET Web API实践系列11,如何设计出优秀的API

    本篇摘自:InfoQ的微信公众号 在设计API的时候考虑的问题包括:API所使用的传输协议.支持的消息格式.接口的控制.名称.关联.次序,等等.我们很难始终作出正确的决策,很可能是在多次犯错之后,并从 ...

  9. 无线通信中FEC 编码原理及评价

    转自:http://blog.csdn.net/wiznet2012/article/details/7492146 大家好,前面我们给大家介绍了无线通信中FEC编码原理(1)和(2),今天继续献上F ...

  10. 关于unity里pbr技术和材质 unity5默认shader和传统的对比

    刚开始也不知道什么是pbr (Physically Based Rendering)后来才发现这是一种新的渲染方式 与之对应的是材质是pbs(Physically Based Shader) unit ...