`

BootStrap表单校验

阅读更多

 

 bootstrapvalidator使用时需要注意的事项

如果你使用的前端框架是bootstrap,那么前端验证框架就不必考虑了,bootstrapvalidator是最好的选择,它和bootstrap的结合最完美,不过要注意版本的问题,针对bootstrap2和bootstrap3有不同的版本。

 

下面是我遇到的两个注意事项,自己做个笔记:

1、为每个要验证的表单元素添加name属性

例如:

 

  1. <div class="form-group">  
  2.     <input type="text" placeholder="请输入短信验证码" id="smsCaptcha" 
  3. name="smsCaptcha" class="form-control"  
  4.         data-bv-notempty data-bv-notempty-message="验证码不能为空"  
  5.         data-bv-regexp="true" data-bv-regexp-regexp="[0-9]{6}" 
  6. data-bv-regexp-message="验证码格式不正确"  
  7.     >  
  8. </div>  
  9. <div class="form-group">  
  10.     <input type="email" class="form-control" id="exampleInputEmail1" 
  11. placeholder="Enter email"   
  12.         data-bv-notempty data-bv-notempty-message="验证码不能为空"  
  13.     >  
  14. </div>  

 

 

上面这个例子中,第一个表单元素添加了name属性,第二个表单元素没有name属性,而这两个表单元素都使用了非空验证,最终效果如下:

 

从结果可以看出,如果要验证一个表单项,则该表单项必须有name属性。否则验证将不起作用。

 

2、为保持良好的效果,表单元素最好放在div.form-group里面

例如下面这个例子:

 

  1. <label for="exampleInputEmail1">用户名</label>  
  2. <div class="input-group" >  
  3.     <input type="text" class="form-control required" placeholder="用户名"
  4.     id="username" name="username" data-bv-notempty 
  5.     data-bv-notempty-message="请输入用户名" />  
  6.     <span class="input-group-addon">  
  7.         <span class="glyphicon glyphicon-user"></span>  
  8.     </span>  
  9. </div>  

 

 

用户名输入框及其label直接放在了form元素下面,则最终产生的效果如下:

 

 

当输入错误时的提示信息位置在整个form表单的下面,样式发生了极大的变化,虽然能达到验证的效果,但是样式却难以令人接受,解决办法就是将需要验证的表单元素放在div.form-group下面:

  1. <div class="form-group">  
  2.     <label for="exampleInputEmail1">用户名</label>  
  3.     <div class="input-group" >  
  4.         <input type="text" class="form-control required" 
  5.         placeholder="用户名" id="username" name="username" 
  6.         data-bv-notempty data-bv-notempty-message="请输入用户名" />  
  7.         <span class="input-group-addon">  
  8.             <span class="glyphicon glyphicon-user"></span>  
  9.         </span>  
  10.     </div>  
  11. </div>  

 

 

3、防止表单重复提交问题

在未引入bootstrapvalidator之前,自己写过一段js代码来防止表单提交,当用户点击提交按钮时候,将提交按钮置灰,代码如下:

 

[javascript] view plaincopyprint?在CODE上查看代码片派生到我的代码片
 
  1. var form = $('form');  
  2. var formType = form.attr('class');  
  3. if(formType != null){  
  4.     //用get和post标识表单类型  
  5.     //get用于标识搜索类型的表单  
  6.     //post用于标识添加,更新类型的表单  
  7.     var get = formType.indexOf('get');  
  8.     var post = formType.indexOf('post');  
  9.     form.submit(function(){  
  10.         if(get != -1){  
  11.             return ;  
  12.         }  
  13.         if(post != -1){  
  14.             if(!submited){  
  15.                 submited = true;  
  16.                 $("button[type=submit]").prop('disabled',true);  
  17.             }else{  
  18.                 return false;  
  19.             }  
  20.         }  
  21.     });  
  22. }  


但是引入bootstrapvalidator后却和这段代码冲突,具体表现为,如果验证出错,例如,某个input必填项没有填写时就提交了表单,此时bootstrapvalidator会提示你这个input为必填的,此时提交按钮为disable状态,直到你填入数据后,按钮才为正常可提交状态,问题就在这,即使你填入了正常的数据,按钮也为正常状态,可是表单却无法提交。排查了大半天,问题就在于上段js代码。

 

其实bootstrapvalidator已经对重复提交做了设计,如果一个表单需要经过bootstrapvalidator验证,点击提交按钮的时候,提交按钮会置灰,直到服务器返回响应。那么,如果一个表单不需要验证呢,比如一个搜索表单,此时可以给表单一个class,如validation-form,在js主函数里面调用$("form.validation-form").bootstrapValidator();将验证器置空即可。

转自:http://blog.csdn.net/coolcaosj/article/details/38085191

分享到:
评论

相关推荐

    Bootstrap实现登录校验表单(带验证码)

    在本文中,我们将探讨如何使用Bootstrap来创建一个带有验证码和验证功能的登录表单。 首先,要创建这样一个表单,我们需要引入Bootstrap的相关CSS和JavaScript文件。在提供的代码片段中,可以看到引用了以下文件: ...

    基于Bootstrap表单验证功能

    在Bootstrap中,表单是数据输入的重要组成部分,而表单验证则是确保用户输入的有效性和安全性的关键功能。在本文中,我们将深入探讨基于Bootstrap的表单验证功能,并提供具体实现方法。 首先,表单验证通常包括对...

    bootstrap校验表单js css

    BootstrapValidator是一款强大的表单验证插件,它基于前端框架Bootstrap设计,可以轻松地为你的HTML表单添加验证功能。这个插件提供了丰富的验证规则和灵活的配置选项,以确保用户输入的数据符合预设条件,从而增强...

    bootstrapValidator表单校验、更改状态、新增、移除校验字段的实例代码

    5. **重置表单校验**: 如果需要清除所有字段的验证状态,可以调用`resetForm`方法。这将重置所有字段的验证结果,例如在`重置表单校验`按钮的事件处理中: ```javascript $('#btn5').click(function() { $('#input...

    基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解

    表单校验是页面开发中非常常见的一类需求,相信每个前端开发人员都有这方面的经验。网上有很多成熟的表单校验框架,虽然按照它们默认的设计,用起来没有多大的问题,但是在实际工作中,表单校验有可能有比较复杂的...

    bootstrap表单验证案例

    对于刚开始使用bootstrap前台框架的朋友来说,表单验证或许是必不可少的。本案例中有常见的格式校验公大家参考,好不容易找到了,给需要的朋友分享一下,不需要积分,有个csdn账号即可,免去积分下载的困扰

    Bootstrapvalidator校验、校验清除重置的实现代码(推荐)

    综上所述,BootstrapValidator提供了强大的表单校验功能,能够帮助开发者快速实现复杂的表单校验需求,并通过简洁的API提供了校验清除和重置的功能,使得表单的操作更加灵活,提升了用户的操作体验。

    BootStrapValidator校验方式

    在使用BootstrapValidator进行表单校验时,通常需要遵循以下几个步骤: 1. **引入依赖**: 首先,你需要在HTML文件中引入BootstrapValidator的相关CSS和JS文件。如描述中所示,需要引入`bootstrapValidator.css`...

    Bootstrap校验实例.

    这个"Bootstrap校验实例"很可能包含了如何在Bootstrap框架内实现表单验证的示例代码和指南。 Bootstrap框架的核心特性之一就是其内置的表单组件和样式,这些组件能够帮助开发者快速创建美观且功能齐全的表单。表单...

    BootstrapValidator-0.5.3表单验证

    BootstrapValidator是基于Bootstrap框架的一个强大的表单验证插件,版本0.5.3提供了丰富的功能和自定义选项,使得在Web应用中实现高效且美观的表单验证变得简单易行。这个压缩包包含了该插件的js文件和css样式文件,...

    bootstrapvalidator

    BootstrapValidator是一款基于Bootstrap框架的前端数据验证插件,它提供了丰富的验证规则和便捷的验证机制,使得在网页表单设计中能轻松实现高效且美观的数据校验。在本压缩包`bootstrapvalidator-master`中,包含了...

    jquery 表单校验的插件formValidator4.01

    5. **可扩展性**:jQuery FormValidator允许与其他jQuery插件(如Bootstrap、jQuery UI等)无缝集成,增强了插件的适用范围。 6. **丰富的验证规则**:包括但不限于数字、字母、长度、URL、日期、时间等,覆盖了...

    bootstrap 验证插件

    BootstrapValidator是一款基于Bootstrap框架的前端表单验证插件,它为开发者提供了强大且灵活的工具,使得在网页设计中创建符合验证规则的表单变得极其简单。BootstrapValidator提供了丰富的预定义验证规则,以及...

    妙用Bootstrap的 popover插件实现校验表单提示功能

    最近使用bootstrap开发项目比较多,在表单校验功能中用popover插件实现出错提示功能很方面,下面小编给大家带来了一篇关于Bootstrap的 popover插件实现校验表单提示功能的实现代码,非常不错,感兴趣的朋友一起看看...

    bootstrap做登录注册页面带验证

    用bootstrap做的登录,注册页面,使用validate进行表单验证,是本人从空白页面搭建的,亲测可用,1积分算是我的辛苦费吧。 我会通过博客注明知识点:http://blog.csdn.net/qq_19558705; 希望能帮到大家。没有积分的...

    bootstrap验证框架

    Bootstrap验证框架是一个基于流行的前端开发框架Bootstrap构建的表单验证工具。它旨在提供美观且功能丰富的用户界面,同时确保用户输入的数据符合预设的验证规则,以提高网站或应用程序的用户体验和数据准确性。 1....

    Bootstrap响应式输入框表单验证代码

    Bootstrap响应式输入框表单验证代码基于Bootstrap3.3.5制作,响应式设计,自适应分辨率,兼容PC端和移动端,有9种输入框表单验证功能:1.文本框只能输入数字代码(小数点也不能输入);2.只能输入数字,能输小数点;3....

Global site tag (gtag.js) - Google Analytics