BootstrapValidator不触发校验的实现代码


Posted in Javascript onSeptember 28, 2016

一、前言

BootstrapValidator是基于bootstrap3的jquery表单验证插件,是最适合bootstrap框架的表单验证插件,在工作中用到此框架就写下自己在使用中积累的一些心得

二、问题描述

当按钮的类型为submit时,使用bootstrapValidator的isValid()能够使验证表单正常工作,但当button的type类型为button时,只调用bootstrapValidator的isValid()方法无法正常工作。这时候就需要使用bootstrapValidator的validate()方法进行激活。

三、项目代码

1、JSP中

<span style="font-size:14px;"><div id="addAdminDialog" class="modal fade" tabindex="-1"> 
<div class="modal-dialog cy-modal-dialog-f"> 
<div class="modal-content"> 
<div class="modal-header"> 
<button class="close" data-dismiss="modal"><span>×</span></button> 
<h4 class="modal-title" id="myLargeModalLabel">新增管理员</h4> 
</div> 
<div class="modal-body"> 
<form id="addAdminForm" method="post" action="${ctx}/admin/operator/add.htm" class="form-horizontal"> 
<div class="form-group"> 
<label class="form-label text-bold" for="">登录名</label> 
<input class="form-control" placeholder="" type="text" name="loginName" id="addLoginName"/> 
</div> 
<div class="form-group"> 
<label class="form-label text-bold" for="">用户名</label> 
<input class="form-control" placeholder="" type="text" name="userName" id="addUserName" /> 
</div> 
<div class="form-group"> 
<label class="form-label text-bold" for="">密码</label> 
<input class="form-control" placeholder="" type="password" name="password" id="addPassword" /> 
</div> 
<div class="form-group"> 
<label class="form-label text-bold" for="">角色</label> 
<div class="form-group"> 
<div class="col-md-10 col-xs-10"> 
<div class="checkbox cy-nopadding" id="addRoles"> 
<c:forEach var="role" items="${roles}"> 
<label name="addRoleLabel" class="form-checkbox form-icon form-text"><input type="checkbox" id="addRole_${role.id}" name="roles" value="${role.id}"> ${role.roleName}</label> 
</c:forEach> 
</div> 
</div> 
</div> 
</div> 
</form> 
</div> 
<!--Modal footer--> 
<div class="modal-footer"> 
<button class="btn btn-primary" onclick="addAdmin();">确定</button> 
<button data-dismiss="modal" class="btn btn-default" type="button">取消</button> 
</div> 
</div> 
</div> 
</div></span>

2、JS

<span style="font-size:14px;">var faIcon = { 
valid: 'glyphicon glyphicon-ok', 
invalid: 'glyphicon glyphicon-remove', 
validating: 'glyphicon glyphicon-refresh' 
} 
//新增管理员前台校验 
$("#addAdminForm").bootstrapValidator({ 
message: 'This value is not valid', 
//反馈图标 
feedbackIcons:faIcon, 
fields: { 
loginName:{ 
message:'登录名无效', 
validators:{ 
notEmpty:{ 
message:'登录名不能为空' 
}, 
StringLength:{ 
min:5, 
max:30, 
message:'用户名长度大于6位并且小于30位' 
}, 
regexp:{ 
regexp:/^[a-zA-Z0-9_]+$/, 
message:'用户名只能由字母、数字和下划线' 
} 
} 
}, 
userName: { 
message: '用户名格式不正确', 
validators: { 
notEmpty: { 
message: '用户名不能为空' 
}, 
stringLength: { 
min: 6, 
max: 30, 
message: '用户名长度大于6位并且小于30位' 
}, 
regexp: { 
regexp: /^[a-zA-Z0-9_]+$/, 
message: '用户名只能由字母、数字和下划线' 
} 
} 
}, 
password: { 
validators: { 
notEmpty: { 
message: '邮箱不能为空' 
}, 
emailAddress: { 
message: '输入的不是一个有效的电子邮件地址' 
} 
} 
} 
} 
});</span> 

<span style="font-size:14px;">// 新增操作员 
function addAdmin() { 
/*手动验证表单,当是普通按钮时。*/ 
$('#addAdminForm').data('bootstrapValidator').validate(); 
if(!$('#addAdminForm').data('bootstrapValidator').isValid()){ 
return ; 
} 
$("#addAdminForm").ajaxSubmit({ 
dataType : 'json', 
type : "post", 
success : function(json) { 
if (json.status == "succ") { 
doQuery(); 
Modal.alert({ 
msg : "操作成功" 
}); 
$("#addAdminDialog").modal('hide'); 
} else { 
Modal.alert({ 
msg : json.msg 
}); 
} 
}, 
error : function() { 
Modal.alert({ 
msg : "操作失败" 
}); 
} 
}); 
}</span>

四、效果图

BootstrapValidator不触发校验的实现代码

BootstrapValidator不触发校验的实现代码

以上所述是小编给大家介绍的BootstrapValidator不触发校验的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
DOM基础教程之使用DOM控制表单
Jan 20 Javascript
Shell脚本实现Linux系统和进程资源监控
Mar 05 Javascript
ECMAScript6函数默认参数
Jun 12 Javascript
纯js代码实现简单计算器
Dec 02 Javascript
js实现前端分页页码管理
Jan 06 Javascript
vue2.0结合DataTable插件实现表格动态刷新的方法详解
Mar 17 Javascript
详解微信小程序 通过控制CSS实现view隐藏与显示
May 24 Javascript
React教程之Props验证的具体用法(Props Validation)
Sep 04 Javascript
利用jQuery+localStorage实现一个简易的计时器示例代码
Dec 25 jQuery
解决Mac安装thrift因bison报错的问题
May 17 Javascript
在vue中使用vuex,修改state的值示例
Nov 08 Javascript
ES6的异步操作之promise用法和async函数的具体使用
Dec 06 Javascript
bootstrap datepicker 与bootstrapValidator同时使用时选择日期后无法正常触发校验的解决思路
Sep 28 #Javascript
使用bootstrapValidator插件进行动态添加表单元素并校验
Sep 28 #Javascript
BootStrap 动态添加验证项和取消验证项的实现方法
Sep 28 #Javascript
Javascript中判断一个值是否为undefined的方法详解
Sep 28 #Javascript
BootStrap Validator使用注意事项(必看篇)
Sep 28 #Javascript
使用BootStrapValidator完成前端输入验证
Sep 28 #Javascript
request请求获取参数的实现方法(post和get两种方式)
Sep 27 #Javascript
You might like
ThinkPHP3.0略缩图不能保存到子目录的解决方法
2012/09/30 PHP
php获取表单中多个同名input元素的值
2014/03/20 PHP
一个PHP的ZIP压缩类分享
2014/05/04 PHP
PHP命名空间(namespace)的动态访问及使用技巧
2014/08/18 PHP
PHP调用MySQL存储过程并返回值的方法
2014/12/26 PHP
php实现将数组转换为XML的方法
2015/03/09 PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
2017/08/03 PHP
yii2安装详细流程
2018/05/23 PHP
PHP判断是否微信访问的方法示例
2019/03/27 PHP
详解CSS样式中的 !important * _ 符号
2021/03/09 HTML / CSS
JS获取地址栏参数的小例子
2013/08/23 Javascript
jquery 取子节点及当前节点属性值的方法
2014/08/24 Javascript
用JavaScript实现PHP的urlencode与urldecode函数
2015/08/13 Javascript
JS实现为排序好的字符串找出重复行的方法
2016/03/02 Javascript
JS简单实现自定义右键菜单实例
2017/05/31 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
javascript观察者模式实现自动刷新效果
2017/09/05 Javascript
Vue封装一个简单轻量的上传文件组件的示例
2018/03/21 Javascript
vue实现打印功能的两种方法
2018/09/07 Javascript
vue-cli 构建骨架屏的方法示例
2018/11/08 Javascript
机器学习之KNN算法原理及Python实现方法详解
2018/07/09 Python
pandas使用apply多列生成一列数据的实例
2018/11/28 Python
Python matplotlib的使用并自定义colormap的方法
2018/12/13 Python
Python计算一个点到所有点的欧式距离实现方法
2019/07/04 Python
What's the difference between deep copy and shallow copy? (深拷贝与浅拷贝有什么区别)
2015/11/10 面试题
员工自我鉴定
2013/10/09 职场文书
网站客服岗位职责
2014/04/05 职场文书
超市优秀员工事迹材料
2014/05/01 职场文书
电气工程及其自动化专业求职信
2014/06/23 职场文书
经典演讲稿开场白
2014/08/25 职场文书
爱护环境卫生倡议书
2015/04/29 职场文书
小学语文继续教育研修日志
2015/11/13 职场文书
个人向公司借款协议书
2016/03/19 职场文书
2019行政前台转正申请书范文3篇
2019/08/15 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
数据分析数据库ClickHouse在大数据领域应用实践
2022/04/03 MySQL