前阵子用了bootstrapvalidate写了一个登录验证,这里小记一笔

首先需要引入

bootstrapValidator.css //可不引入

jquery-2.1.0.min.js

bootstrap.min.js

bootstrapValidator.js

下面是校验方式 其中校验的两个文本框的name属性为 loginName和 password (切记文本框一定要用name属性 否则校验无效)

  1. function validate(){
  2. $('form').bootstrapValidator({
  3. message: 'This value is not valid',//默认提示信息
  4. feedbackIcons: {//提示图标
  5. valid: 'glyphicon glyphicon-ok',
  6. invalid: 'glyphicon glyphicon-remove',
  7. validating: 'glyphicon glyphicon-refresh'
  8. },
  9. fields: {
  10. loginName: {
  11. message: '用户名验证失败',
  12. validators: {
  13. notEmpty: {
  14. message: '用户名不能为空'
  15. }
  16. }
  17. },
  18. password: {
  19. validators: {
  20. notEmpty: {
  21. message: '密码不能为空'
  22. }
  23. }
  24. }
  25. }
  26. }).on('success.form.bv',function(e){
  27. formsub();
  28. e.preventDefault();//防止自动提交
  29. });
  30. }
  1. function formsub(){
  2. var flag = $('form').data("bootstrapValidator").isValid();//校验合格
  3. if(flag){
  4. var load = top.layer.load();
  5. var $form = $('#form');
  6. $.ajax({
  7. url:$form.attr('action'),
  8. data:$form.serialize(),
  9. type:'post',
  10. beforeSend:function(){
  11. layer.msg('正在登录');
  12. },
  13. success:function(data){
  14. if(data=="success"){
  15. setTimeout(function(){
  16. layer.close(load);
  17. layer.msg('登录成功');
  18. setAndRemoveCookie();//是否写入cookie
  19. },1000);
  20. window.location.href=path+'/department/choose.do';
  21. /* setTimeout(function(){
  22. //登录返回
  23.  
  24. },2000); */
  25. }else{
  26. layer.close(load);
  27. layer.msg('身份验证失败,请检查用户名或密码是否正确!',{
  28. time:3500 //3.5秒钟之后关闭
  29. });
  30. /* setTimeout(function(){
  31.  
  32. },1000); */
  33. }
  34. },
  35. error:function(e){
  36. layer.msg('出错咯o(╥﹏╥)o,请与后台联系!',{
  37. btn:'我知道了'
  38. });
  39. layer.close(load);
  40. }
  41. })
  42. }
  43. }
  1. 之前在做表单验证的时候 出现了一个问题 当我点击登录的时候 只有第一次点击时 ajax请求后台是正常返回用户名/密码不对 消息的
    但如果我故意输错一次 再次点击 就会发现 后台进入了两次 这时候 ajax直接进入返回的error空白页了
    网上查阅了资料 说是bootstrapvalidate 存在默认提交行为 于是加了下面这句代码就好了
  1. e.preventDefault();//防止自动提交
  1. 这句代码 只能加在末尾那一行 否则当点击登录的时候 第一次就没有响应了
  1.  

BootStrapValidate 简单使用的更多相关文章

  1. 【造轮子】打造一个简单的万能Excel读写工具

    大家工作或者平时是不是经常遇到要读写一些简单格式的Excel? shit!~很蛋疼,因为之前吹牛,就搞了个这东西,还算是挺实用,和大家分享下. 厌烦了每次搞简单类型的Excel读写?不怕~来,喜欢流式 ...

  2. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  3. node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理

    一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...

  4. 哪种缓存效果高?开源一个简单的缓存组件j2cache

    背景 现在的web系统已经越来越多的应用缓存技术,而且缓存技术确实是能实足的增强系统性能的.我在项目中也开始接触一些缓存的需求. 开始简单的就用jvm(java托管内存)来做缓存,这样对于单个应用服务 ...

  5. 在Openfire上弄一个简单的推送系统

    推送系统 说是推送系统有点大,其实就是一个消息广播功能吧.作用其实也就是由服务端接收到消息然后推送到订阅的客户端. 思路 对于推送最关键的是服务端向客户端发送数据,客户端向服务端订阅自己想要的消息.这 ...

  6. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  7. 使用 Nodejs 搭建简单的Web服务器

    使用Nodejs搭建Web服务器是学习Node.js比较全面的入门教程,因为要完成一个简单的Web服务器,你需要学习Nodejs中几个比较重要的模块,比如:http协议模块.文件系统.url解析模块. ...

  8. ASP.NET Aries 入门开发教程2:配置出一个简单的列表页面

    前言: 朋友们都期待我稳定地工作,但创业公司若要躺下,也非意念可控. 若人生注定了风雨飘摇,那就雨中前行了. 最机开始看聊新的工作机会,欢迎推荐,创业公司也可! 同时,趁着自由时间,抓紧把这系列教程给 ...

  9. 简单入门canvas - 通过刮奖效果来学习

    一 .前言 一直在做PC端的前端开发,从互联网到行业软件.最近发现移动端已经成为前端必备技能了,真是不能停止学习.HTML5新增的一些东西,canvas是用的比较多也比较复杂的一个,简单的入门了一下, ...

随机推荐

  1. 爬虫day03之scrapy安装与使用

    参考博客 技术问题不要问,业务问题可以问是不是有一种更好的方法? scrapy windows安装 1. 安装scrapy 参考博客 https://www.cnblogs.com/wupeiqi/a ...

  2. Struts 2 官方文档中文版

    最近正在学 Struts 2 ,咱英文水平不行啊,找到了<Struts 2 官方文档中文版>,虽然翻译的不全,有总比没有强. 地址:https://cwiki.apache.org/con ...

  3. SQL Server ->> 性能调优案例之 -- 包含递归查询的视图导致整个查询语句性能下降

    有个语句最近性能下降很厉害,原本1秒就可以查询完毕的事情现在居然需要3-4分钟. 首先我的做法是先快速找出导致整个语句下降的元凶.在这个例子里面查询语句有3个JOIN字句,我通过删除某一个JOIN节点 ...

  4. 如何提高Ajax性能

    1.适当使用缓存机制 2.使用CDN内容分发来访问Jquery脚本: (1)自己公司架设CDN服务器 (2)使用第三方公司的,比如微软,谷歌等公司的CDN,但有时候不太靠谱 3.JS/CSS文件的打包 ...

  5. WINDBG解决cpu占高的问题

    https://blog.csdn.net/yenange/article/details/62886988 https://blog.csdn.net/zhushentian/article/det ...

  6. curl命令学习之一--基本用法

  7. except but

    He didn't speak anything but Greek... 他只会说希腊语.The crew of the ship gave them nothing but bread to ea ...

  8. python爬虫Jenkins编译失败的日志

    背景:在Jenkins编译失败后,需要拿到Jenkins的编译失败的日志,存储在数据库中,在把数据取出来,在另外一个页面进行展示,我的思路为: 1.观看Jenkins编译失败后的控制台显示的内容 2. ...

  9. VM安装CentOs7虚拟机后无法上网之解决方法

    最近在研究DC/OS的安装,读了很多安装方法后决定先从docker的安装入手,由于DC/OS的安装必须在CentOs7版本以上,所以就在VM下安装了CentOs7,殊不知安装后并不能上网,于是乎又转到 ...

  10. webpack环境搭建开发环境,JavaScript面向对象的详解,UML类图的使用

    PS:因为所有的设计模式都是基于面向对象来完成的,所以在讲解设计模式之前先来过一下面向对象都有哪些知识点 搭建开发环境 初始化npm环境 下载安装nodejs安装即可,nodejs自带npm管理包,然 ...