问题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:

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

在选择商品之后会在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”事件,而捕获,达到验证的效果

 

转载于:https://www.cnblogs.com/Brose/p/bootstrapValidator_hiddeninput.html

bootstrapValidator对于隐藏域验证和程序赋值即时验证的问题相关推荐

  1. 控件onkeyup事件,使验证控件不能即时验证

    今天我用一个RegularExpressionValidator验证控件验证一个身份证号码(TextBox1) 可当焦点切换时死活都不验证,按理说文本框一失去焦点就即时验证,后来发现是在TextBox ...

  2. input隐藏域赋值数组

    直接给input赋值数组的话,获取到的是[object,object],[object,object]这样的数据结构.无法进行处理 正确的做法应该是在给input赋值的时候JSON.stringify ...

  3. html隐藏域保存数组,关于给JS组合数组赋值给隐藏域问题

    关于给JS组合数组赋值给隐藏域问题 我在页面上有动态添加的文本框,我用JS组合数组成字符串,给隐藏域,然后后台取值,在IE8,火狐,谷歌上测试可以接到值,但在IE6 360这种浏览器上发现一个BUG, ...

  4. JQuery validate验证表单隐藏域

    当我们提交表单时,往往需要做一些必填和数据格式校验,点击提交,doSubmit的 beforeSend方法即可做校验. <script type="text/javascript&qu ...

  5. html给隐藏域赋值,selenium webDriver给隐藏域赋值 input hidden set value

    //直接这样无法给input hidden赋值 // driver.findElement(By.id("image_default")).sendKeys("a1112 ...

  6. WebForm框架、隐藏域

    WebForm介绍 WebForm是微软推出的一款为了吸引更多的其他开发者能够快速入门到.NET技术中的一个框架,让开发人员感觉使用.NET技术进行BS开发和使用.NET技术进行CS开发一样简单快速. ...

  7. 前端:HTML/06/表单,表单元素(单行文本域,单行密码域,单选按钮,复选框,下拉列表,文本区域,上传文件域,各种按钮,隐藏域,lt;caption表格标题)

    表单<form>(块元素) 表单的概念:表单主要用来获取用户数据(信息),如:注册表单, 查询表单,登录表单. 表单的工作原理: 浏览有表单的网页,填写一些必要的信息,然后点击某个按钮进行 ...

  8. input值不可变、隐藏input(表单隐藏域)

    input标签值不可变.隐藏标签 一.值不可变 方法1:readonly 方法2:disabled readonly 和 disabled的区别: 二.隐藏\标签(表单隐藏域) 一.值不可变 在写前端 ...

  9. 怎么在C语言软件上验证程序,一种验证指针程序的方法

    随着国家.社会和日常生活对软件系统的依赖程度日益增长,安全攸关软件的高可信成为保障国家安全.保持经济可持续发展和维护社会稳定的必要条件. 形式验证是提高软件可信程度的重要方法.粗略地说,软件的形式验证 ...

最新文章

  1. OpenSSL 再爆严重安全漏洞 —— CCS 注入
  2. 【NLP】Prompt Learning-使用模板激发语言模型潜能
  3. 源码注释TODO/ FIXME/XXX,
  4. SAP UI5对mobile touch事件的支持
  5. Python代码注释应该怎么写?
  6. JVM调优总结(1):一些概念
  7. 《Java并发编程的艺术》之阻塞队列
  8. 【本人秃顶程序员】SpringMVC工作原理详解
  9. 渗透入门——术语概述
  10. 走进音视频的世界——新一代开源编解码器AV1
  11. 完工后的决算书范本_竣工结算书样本.doc
  12. URAL 1069 Prufer Code(模拟)
  13. 如何在github上创建自己的个人网站
  14. 计算机点击管理无效,win10开始菜单没反应,二种解决办法!
  15. 订单拆单,电商开发时 经常遇到的问题
  16. 【Docker】谷粒商城笔记记录:P104运行ElasticSearch容器
  17. 计算机专业教师演讲稿,计算机专业演讲稿2篇
  18. 几分钟内上线一个网站,这些神器我爱了!
  19. 男人在神永恒国度里的沉思录
  20. 如果想赚钱,先学理财吧,那么入门书籍有哪些?富爸爸穷爸爸 名副其实NO1

热门文章

  1. 【线程控制:线程休眠】
  2. Jenkins - 持续集成环境搭建【转】
  3. svn is already locked解决办法
  4. 解决Eclipse启动Tomcat时报Error loading WebappClassLoader错误
  5. Setting Expires and Cache-Control: max-age headers for static resources in ASP.NET
  6. 小熊的人生回忆(八)
  7. 基于IDEA搭建JavaWeb入门项目结构(2021版)
  8. foo( a )JAVA面试题_Java相关面试题总结+答案(五)
  9. Vue之动态组件(二)
  10. 南通大学计算机学院何鹏,南通大学第一次自主评教授,加油!再评多点。