BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析


Posted in Javascript onDecember 01, 2016

问题1:

如下代码:

<input type="hidden" name="productId"/>
$("#addForm").bootstrapValidator({
fields: {
productId: {
validators: {
notEmpty: {
message: '请选择一个商品'
}
}
}
}
});

这样的配置并没有在提交的时候对表单元素productId进行验证,那是因为bootstrapValidator默认配置对于“隐藏域(:hidden)、禁用域(:disabled)、那啥域(:not(visible))”是不进行验证的。

解决方法:

$("#addForm").bootstrapValidator({
//excluded:[":hidden",":disabled",":not(visible)"] ,//bootstrapValidator的默认配置
excluded:[":disabled"],//关键配置,表示只对于禁用域不进行验证,其他的表单元素都要验证
fields: {
productId: {
validators: {
notEmpty: {
message: '请选择一个商品'
}
}
}
}
});

问题2:

我们往往会有这样的需求,如下图:

BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析

在选择商品之后会在productName里面展示商品名称给用户看,而在productId这个隐藏域里面放一个商品的ID。

一般情况下这样的操作是由程序来完成的,

$("input[name='productId']").val(data.productId);

bootstrapValidator这个插件不能捕获这样的“程序赋值事件”,所以这里不能达到验证的效果,所以我们需要做一个小小的变通:

$("#addForm").bootstrapValidator({
//excluded:[":hidden",":disabled",":not(visible)"] ,//bootstrapValidator的默认配置
excluded:[":disabled"],//关键配置,表示只对于禁用域不进行验证,其他的表单元素都要验证
fields: {
productId: {
trigger:"change", //问题2.关键配置
validators: {
notEmpty: {
message: '请选择一个商品'
}
}
}
}
});
//赋值之后触发一次“change”事件
$("input[name='productId']").val(data.productId).change();

这样以后bootrapValidator会因为触发了“change”事件,而捕获,达到验证的效果

以上所述是小编给大家介绍的BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Jquery ajax传递复杂参数给WebService的实现代码
Aug 08 Javascript
javascript jscroll模拟html元素滚动条
Dec 18 Javascript
JavaScript 函数参数是传值(byVal)还是传址(byRef) 分享
Jul 02 Javascript
Javascript数据结构与算法之列表详解
Mar 12 Javascript
Bootstrap自定义文件上传下载样式
May 26 Javascript
仅9张思维导图帮你轻松学习Javascript 就这么简单
Jun 01 Javascript
微信小程序  action-sheet详解及实例代码
Nov 09 Javascript
谈谈JavaScript中浏览器兼容问题的写法小议
Dec 17 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
Apr 19 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
Jul 19 Javascript
JS获取并处理php数组的方法实例分析
Sep 04 Javascript
详解vite+ts快速搭建vue3项目以及介绍相关特性
Feb 25 Vue.js
BootStrap Validator 版本差异问题导致的submitHandler失效问题的解决方法
Dec 01 #Javascript
jsTree使用记录实例
Dec 01 #Javascript
Vue.JS入门教程之列表渲染
Dec 01 #Javascript
Vue.JS入门教程之处理表单
Dec 01 #Javascript
利用js获取下拉框中所选的值
Dec 01 #Javascript
js微信扫描二维码登录网站技术原理
Dec 01 #Javascript
Bootstrap的class样式小结
Dec 01 #Javascript
You might like
PHP中使用mktime获取时间戳的一个黑色幽默分析
2012/05/31 PHP
Yii使用CLinkPager分页实例详解
2014/07/23 PHP
Mac OS下配置PHP+MySql环境
2015/02/25 PHP
PHP中filter函数校验数据的方法详解
2015/07/31 PHP
Laravel框架验证码类用法实例分析
2019/09/11 PHP
javascript 面向对象全新理练之继承与多态
2009/12/03 Javascript
Javascript实现简单二级下拉菜单实例
2014/06/15 Javascript
jQuery网页选项卡插件rTabs用法实例分析
2015/08/26 Javascript
JavaScript识别网页关键字并进行描红的方法
2015/11/09 Javascript
js实现网页图片延时加载 提升网页打开速度
2016/01/26 Javascript
深入浅析JavaScript中with语句的理解
2016/05/12 Javascript
Node.js中如何合并两个复杂对象详解
2016/12/31 Javascript
原生JS实现图片网格式渐显、渐隐效果
2017/06/05 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
Express系列之multer上传的使用
2017/10/27 Javascript
使用 vue.js 构建大型单页应用
2018/02/10 Javascript
vue axios基于常见业务场景的二次封装的实现
2018/09/21 Javascript
动态实现element ui的el-table某列数据不同样式的示例
2021/01/22 Javascript
[03:59]第二届DOTA2亚洲邀请赛选手传记-VGJ.rOtk
2017/04/03 DOTA
学习python (1)
2006/10/31 Python
python调用cmd复制文件代码分享
2013/12/27 Python
python两种遍历字典(dict)的方法比较
2014/05/29 Python
实例讲解Python中global语句下全局变量的值的修改
2016/06/16 Python
Pytorch入门之mnist分类实例
2018/04/14 Python
python常用排序算法的实现代码
2019/11/08 Python
pandas中read_csv、rolling、expanding用法详解
2020/04/21 Python
英国知名的皮手套品牌:Dents
2016/11/13 全球购物
美国著名的家居用品购物网站:Bed Bath & Beyond
2018/01/05 全球购物
学习雷锋做美德少年寄语大全
2014/04/09 职场文书
二年级评语大全
2014/04/23 职场文书
大学活动总结范文
2014/04/29 职场文书
信用社竞聘演讲稿
2014/05/16 职场文书
港澳通行证委托书怎么写
2014/08/02 职场文书
体检通知范文
2015/04/21 职场文书
小米11和iphone12哪个值得买?小米11对比iphone12评测
2021/04/21 数码科技
java版 联机五子棋游戏
2022/05/04 Java/Android