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 相关文章推荐
用javascript实现的激活输入框后隐藏初始内容
Jun 29 Javascript
jquery中dom操作和事件的实例学习 下拉框应用
Dec 01 Javascript
JavaScript之引用类型介绍
Aug 10 Javascript
onclick和onblur冲突问题的快速解决方法
Apr 28 Javascript
jquery实现左右无缝轮播图
Jul 31 Javascript
Angularjs中的ui-bootstrap的使用教程
Feb 19 Javascript
Node.js 使用递归实现遍历文件夹中所有文件
Sep 18 Javascript
vuejs实现标签选项卡动态更改css样式的方法
May 31 Javascript
vue鼠标移入添加class样式,鼠标移出去除样式(active)实现方法
Aug 22 Javascript
javascript设计模式 ? 解释器模式原理与用法实例分析
Apr 17 Javascript
Vue页面跳转传递参数及接收方式
Sep 09 Javascript
如何搭建一个完整的Vue3.0+ts的项目步骤
Oct 18 Javascript
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
香妃
2021/03/03 冲泡冲煮
php中实现简单的ACL 完结篇
2011/09/07 PHP
php使用多个进程同时控制文件读写示例
2014/02/28 PHP
纯PHP生成的一个树叶图片画图例子
2014/04/16 PHP
Yii结合CKEditor实现图片上传功能
2014/06/13 PHP
xml 与javascript结合的问题解决方法
2007/03/24 Javascript
基于jquery tab切换(防止页面刷新)
2012/05/23 Javascript
js数组与字符串的相互转换方法
2014/07/09 Javascript
JS实现iframe自适应高度的方法(兼容IE与FireFox)
2016/06/24 Javascript
浅谈EasyUI常用控件的禁用方法
2016/11/09 Javascript
JS表单数据验证的正则表达式(常用)
2017/02/18 Javascript
vue2.0实战之使用vue-cli搭建项目(2)
2017/03/27 Javascript
js学习心得_一个简单的动画库封装tween.js
2017/07/14 Javascript
jquery ztree实现右键收藏功能
2017/11/20 jQuery
微信小程序自定义组件实现tabs选项卡功能
2018/07/14 Javascript
vue 父组件给子组件传值子组件给父组件传值的实例代码
2019/04/15 Javascript
详解jQuery如何实现模糊搜索
2019/05/10 jQuery
ES6使用新特性Proxy实现的数据绑定功能实例
2020/05/11 Javascript
Vue两种组件类型:递归组件和动态组件的用法
2020/08/06 Javascript
[02:36]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma 选手采访
2021/03/11 DOTA
python定时器使用示例分享
2014/02/16 Python
Python set集合类型操作总结
2014/11/07 Python
python中常用检测字符串相关函数汇总
2015/04/15 Python
python获取外网ip地址的方法总结
2015/07/02 Python
Python的GUI框架PySide的安装配置教程
2016/02/16 Python
浅谈python中requests模块导入的问题
2018/05/18 Python
对python csv模块配置分隔符和引用符详解
2018/12/12 Python
python去重,一个由dict组成的list的去重示例
2019/01/21 Python
python中调试或排错的五种方法示例
2019/09/12 Python
pyinstaller打包程序exe踩过的坑
2019/11/19 Python
Madewell美德威尔美国官网:美国休闲服饰品牌
2016/11/25 全球购物
植村秀美国官网:Shu Uemura美国
2019/03/19 全球购物
自荐信写法介绍
2014/01/25 职场文书
项目施工员岗位职责
2014/03/09 职场文书
酒店前台接待岗位职责
2015/04/02 职场文书
Python接口自动化之文件上传/下载接口详解
2022/04/05 Python