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 相关文章推荐
js判断变量是否空值的代码
Oct 26 Javascript
JavaScript Promise启示录
Aug 12 Javascript
JavaScript自定义数组排序方法
Feb 12 Javascript
JavaScript中判断两个字符串是否相等的方法
Jul 07 Javascript
浅析Bootstrip的select控件绑定数据的问题
May 10 Javascript
深入理解JavaScript中的浮点数
May 18 Javascript
JS Ajax请求如何防止重复提交
Jun 13 Javascript
Angular.js实现多个checkbox只能选择一个的方法示例
Feb 24 Javascript
js实现功能比较全面的全选和多选
Mar 02 Javascript
JS中定位 position 的使用实例代码
Aug 06 Javascript
基于js中的存储键值对以及注意事项介绍
Mar 30 Javascript
js实现简单的随机点名器
Sep 17 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中的str_repeat函数在JavaScript中的实现
2013/09/16 PHP
php实现图片文件与下载文件防盗链的方法
2014/11/03 PHP
PHP实现随机发放扑克牌
2020/04/21 PHP
下载网站打开页面后间隔多少时间才显示下载链接地址的代码
2010/04/25 Javascript
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
JavaScript中Boolean对象的属性解析
2015/10/21 Javascript
javascript中tostring()和valueof()的用法及两者的区别
2015/11/16 Javascript
jQuery使用Selectator插件实现多选下拉列表过滤框(附源码下载)
2016/04/08 Javascript
animate.css在vue项目中的使用教程
2018/08/05 Javascript
解决vue2.0路由跳转未匹配相应用路由避免出现空白页面的问题
2018/08/24 Javascript
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
2018/12/05 Javascript
详解vue-cli+element-ui树形表格(多级表格折腾小计)
2019/04/17 Javascript
jQuery创建折叠式菜单
2019/06/15 jQuery
从0搭建vue-cli4脚手架
2020/06/17 Javascript
[00:32]2018DOTA2亚洲邀请赛VGJ.T出场
2018/04/03 DOTA
Python脚本在Appium库上对移动应用实现自动化测试
2015/04/17 Python
python爬虫爬取网页表格数据
2018/03/07 Python
Python中format()格式输出全解
2019/04/12 Python
itchat-python搭建微信机器人(附示例)
2019/06/11 Python
树莓派采用socket方式文件传输(python)
2019/06/22 Python
python 利用pywifi模块实现连接网络破解wifi密码实时监控网络
2019/09/16 Python
Python调用scp向服务器上传文件示例
2019/12/22 Python
python设置环境变量的作用整理
2020/02/17 Python
Django REST Swagger实现指定api参数
2020/07/07 Python
python如何构建mock接口服务
2021/01/28 Python
详解解决jupyter不能使用pytorch的问题
2021/02/18 Python
canvas烟花特效锦集
2018/01/17 HTML / CSS
iframe与window.onload如何使用详解
2020/05/07 HTML / CSS
中兴通讯全球官方网站:ZTE
2020/12/26 全球购物
《乡下孩子》教学反思
2014/04/17 职场文书
大学生实训报告总结
2014/11/05 职场文书
团组织推优材料
2014/12/29 职场文书
2015年宣传思想工作总结
2015/05/22 职场文书
校园之声广播稿
2015/08/18 职场文书
毕业生自荐求职信书写的技巧
2019/08/26 职场文书
python使用pywinauto驱动微信客户端实现公众号爬虫
2021/05/19 Python