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 动画卷页 返回顶部 动画特效(兼容Chrome)
Feb 15 Javascript
Extjs在exlipse中设置自动提示的方法
Apr 07 Javascript
CSS(js)限制页面显示的文本字符长度
Dec 27 Javascript
JavaScript导出Excel实例详解
Nov 25 Javascript
jQuery 移动端artEditor富文本编辑器
Jan 11 Javascript
jQuey将序列化对象在前台显示地实现代码(方法总结)
Dec 13 Javascript
vue.js的提示组件
Mar 02 Javascript
JavaScript中 DOM操作方法小结
Apr 25 Javascript
详解AngularJS ng-class样式切换
Jun 27 Javascript
input框中自动展示当前日期yyyy/mm/dd的实现方法
Jul 06 Javascript
Javascript之图片的延迟加载的实例详解
Jul 24 Javascript
vue中使用better-scroll实现滑动效果及注意事项
Nov 15 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
怎样在php中使用PDF文档功能
2006/10/09 PHP
php XMLWriter类的简单示例代码(RSS输出)
2011/09/30 PHP
thinkphp中空模板与空模块的用法实例
2014/11/26 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
yii2带搜索功能的下拉框实例详解
2016/05/12 PHP
轻松掌握php设计模式之访问者模式
2016/09/23 PHP
PHP XML和数组互相转换详解
2016/10/26 PHP
PHP实现二维数组按某列进行排序的方法
2016/11/18 PHP
encode脚本和normal脚本混用的问题与解决方法
2007/03/08 Javascript
几种延迟加载JS代码的方法加快网页的访问速度
2013/10/12 Javascript
jQuery实现鼠标滑向当前图片高亮显示并且其它图片变灰的方法
2015/07/27 Javascript
Bootstrap每天必学之导航
2015/11/26 Javascript
node.js插件nodeclipse安装图文教程
2020/10/19 Javascript
JS组件系列之使用HTML标签的data属性初始化JS组件
2016/09/14 Javascript
node.js操作mysql简单实例
2017/05/25 Javascript
Node.js环境下Koa2添加travis ci持续集成工具的方法
2017/06/19 Javascript
Vue源码学习之初始化模块init.js解析
2017/11/02 Javascript
关于自定义Egg.js的请求级别日志详解
2018/12/12 Javascript
JavaScript实现连连看连线算法
2019/01/05 Javascript
[16:56]教你分分钟做大人:司夜刺客
2014/10/30 DOTA
Python中实现远程调用(RPC、RMI)简单例子
2014/04/28 Python
Python中MYSQLdb出现乱码的解决方法
2014/10/11 Python
python基于pygame实现响应游戏中事件的方法(附源码)
2015/11/11 Python
Python实现拷贝多个文件到同一目录的方法
2016/09/19 Python
Python实现屏幕截图的两种方式
2018/02/05 Python
Python Json模块中dumps、loads、dump、load函数介绍
2018/05/15 Python
Python GUI Tkinter简单实现个性签名设计
2018/06/19 Python
Python可变和不可变、类的私有属性实例分析
2019/05/31 Python
Python网络编程之使用TCP方式传输文件操作示例
2019/11/01 Python
python下对hsv颜色空间进行量化操作
2020/06/04 Python
Python自动化测试基础必备知识点总结
2021/02/07 Python
给同学的道歉信
2014/01/16 职场文书
党的群众路线教育实践活动学习心得体会
2014/03/03 职场文书
保护环境的标语
2014/06/09 职场文书
利用javaScript处理常用事件详解
2021/04/14 Javascript
Python OpenCV实现图形检测示例详解
2022/04/08 Python