jquery插件bootstrapValidator表单验证详解
发布时间 - 2026-01-10 21:49:54 点击率:次Bootstrap Validator是为Bootstrap3设计的一款表单验证jQuery插件,非常适合基于Bootstrap框架的网站。
看作者的github,这款插件已经不再更新了,而推荐使用FormValidation,不过现在还是先介绍一下BootstrapValidator的使用。

准备工作
BootstrapValidator文档地址:http://bv.doc.javake.cn/
下载源码后,将其中的bootstrapValidator.min.css和bootstapValidator.min.js导入项目,并在页面中引入这些组件,如下:
<link rel="stylesheet" type="text/css" href="path/bootstrapValidator.min.css"> <script type="text/javascript" src="path/bootstrapValidator.min.js"></script>
其中path是对应文件导入项目的路径
简单应用
文档中给出调用插件的方法是:
$(document).ready(function() {
$(formSelector).bootstrapValidator({
excluded: ...,
feedbackIcons: ...,
live: 'enabled',
message: 'This value is not valid',
submitButtons: 'button[type="submit"]',
submitHandler: null,
trigger: null,
fields: {
<fieldName>: {
enabled: true,
message: 'This value is not valid',
container: null,
selector: null,
trigger: null,
// Map the validator name with its options
validators: {
...
<validatorName>: <validatorOptions>
...
}
}
...
}
});
});
下面针对一个简单的表单来进行说明:
<form id="logForm" class="form-horizontal"> <div class="form-group"> <label class="col-lg-3 control-label">用户名</label> <div class="col-lg-5"> <input type="text" class="form-control" name="username" /> </div> </div> <div class="form-group"> <label class="col-lg-3 control-label">邮箱</label> <div class="col-lg-5"> <input type="text" class="form-control" name="email" /> </div> </div> <div class="form-group"> <label class="col-lg-3 control-label">密码</label> <div class="col-lg-5"> <input type="password" class="form-control" name="password" /> </div> </div> <button type="submit" class="btn btn-md">提交</button> </form>
对于上面这个表单应用BootstrapValidator非常简单,fieldName 对应表单中每一项的 name 属性,然后BV还内置了很多 validator 供用户选择,详细可参考文档的 validators 部分,可以看到,邮箱格式的验证正是其中之一,不需要用户自己写正则了。
$(document).ready(function() {
$('#signup-form').bootstrapValidator({
fields: {
username: {
validators: {
notEmpty: {
message: '用户名不能为空'
},
stringLength: {
min: 3,
max: 6,
message: '用户名只能在3-6个字符之间哦~'
}
}
},
email: {
validators: {
emailAddress: {
message: '邮箱格式有误'
}
}
},
password: {
validators: {
notEmpty: {
message: '密码不能为空'
},
stringLength: {
min: 6,
max: 8,
message: '密码必须在6-8个字符之间~'
},
regexp: {
regexp: /^[a-zA-Z0-9]+$/,
message: '密码只能由字母、数字组成~'
}
}
}
}
});
});
不符合验证要求时,会显示错误提示的message,并且禁用提交按钮,提示信息的颜色字体等等都可以重写css来设置,效果展示如下:
注:图中的注册按钮处于禁用状态
下面再介绍一下fields的 selector,因为表单数据往往是属于某一个注册用户所有,为方便与后台进行数据交互,我们往往按如下的形式设置name,这时候就不能直接利用name属性来进行验证了,而是使用selector来定义fields:
<form class="form-horizontal"> <div class="form-group"> <label class="col-lg-3 control-label">用户名</label> <div class="col-lg-5"> <input type="text" id="user" class="form-control" name="login_user.userName" /> </div> </div> <div class="form-group"> <label class="col-lg-3 control-label">密码</label> <div class="col-lg-5"> <input type="password" id="pass" class="form-control" name="login_user.password" /> </div> </div> <button type="submit" id="submitBtn" class="btn btn-md">提交</button> </form>
对应的js代码:
$(document).ready(function() {
$('#signup-form').bootstrapValidator({
fields: {
user: {
selector: '#user',
validators: {
notEmpty: {
message: '用户名不能为空'
},
stringLength: {
min: 3,
max: 6,
message: '用户名只能在3-6个字符之间哦~'
}
}
},
pass: {
selector: '#pass',
validators: {
notEmpty: {
message: '密码不能为空'
},
stringLength: {
min: 6,
max: 8,
message: '密码必须在6-8个字符之间~'
},
regexp: {
regexp: /^[a-zA-Z0-9]+$/,
message: '密码只能由字母、数字组成~'
}
}
}
}
});
});
如果你嫌弃这样写代码累赘,可以直接应用相应的HTML属性,详细可参考文档的 settings 部分
还想深入学习表单验证的朋友,可以点击专题:jquery表单验证大全 JavaScript表单验证大全
如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:
Bootstrap学习教程
Bootstrap实战教程
Bootstrap Table使用教程
Bootstrap插件使用教程
以上只是BootstrapValidator的一个非常简单的应用, 官方文档 很详细,感兴趣的话就继续查阅,来深入了解它的强大功能吧
# jquery
# bootstrapValidator
# 表单验证
# Bootstrap中的表单验证插件bootstrapValidator使用方法整理(推荐)
# JS组件Form表单验证神器BootstrapValidator
# 实用又漂亮的BootstrapValidator表单验证插件
# jquery插件bootstrapValidator数据验证详解
# bootstrapValidator bootstrap-select验证不可用的解决办法
# 基于jQuery 实现bootstrapValidator下的全局验证
# bootstrapValidator自定验证方法写法
# 基于BootstrapValidator的Form表单验证(24)
# 使用BootStrapValidator完成前端输入验证
# BootstrapValidator验证用户名已存在(ajax)
# 表单
# 文档
# 为空
# 还想
# 介绍一下
# 如果你
# 不需要
# 只能在
# 推荐使用
# 并在
# 这款
# 感兴趣
# 提示信息
# 点击这里
# 注册用户
# 可以看到
# 可以直接
# 就不能
# 重写
# 不符合
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251811 】
【
AI营销90571 】
相关推荐:
如何在云主机上快速搭建多站点网站?
如何安全更换建站之星模板并保留数据?
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
Laravel Fortify是什么,和Jetstream有什么关系
Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面
Laravel怎么连接多个数据库_Laravel多数据库连接配置
详解Android中Activity的四大启动模式实验简述
Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
Internet Explorer官网直接进入 IE浏览器在线体验版网址
如何在云主机快速搭建网站站点?
使用C语言编写圣诞表白程序
Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】
网站制作价目表怎么做,珍爱网婚介费用多少?
专业商城网站制作公司有哪些,pi商城官网是哪个?
在线制作视频的网站有哪些,电脑如何制作视频短片?
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
中国移动官方网站首页入口 中国移动官网网页登录
高端智能建站公司优选:品牌定制与SEO优化一站式服务
三星、SK海力士获美批准:可向中国出口芯片制造设备
Laravel怎么解决跨域问题_Laravel配置CORS跨域访问
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
php json中文编码为null的解决办法
LinuxCD持续部署教程_自动发布与回滚机制
如何快速上传建站程序避免常见错误?
如何在阿里云ECS服务器部署织梦CMS网站?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南
简历没回改:利用AI润色让你的文字更专业
长沙做网站要多少钱,长沙国安网络怎么样?
Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权
高端企业智能建站程序:SEO优化与响应式模板定制开发
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
如何做网站制作流程,*游戏网站怎么搭建?
企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?
Laravel中间件起什么作用_Laravel Middleware请求生命周期与自定义详解
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
如何在建站之星网店版论坛获取技术支持?
Laravel如何实现本地化和多语言支持?(i18n教程)
ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】
Laravel如何使用Sanctum进行API认证?(SPA实战)
Android利用动画实现背景逐渐变暗
Laravel观察者模式如何使用_Laravel Model Observer配置
Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优
个人网站制作流程图片大全,个人网站如何注销?
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
如何在腾讯云服务器上快速搭建个人网站?

