bootstrapValidator 的隐藏域验证

1. bootstrapValidator默认配置对于“隐藏域(:hidden)、禁用域(:disabled)、不可见域(:not (visible))”是不进行验证的。

解决方法:

$("form").bootstrapValidator({
    //excluded:[":hidden",":disabled",":not(visible)"] ,//bootstrapValidator的默认配置
    excluded:[":disabled"],//关键配置,表示只对于禁用域不进行验证,其他的表单元素都要验证
    fields: {
       ...
    }
});

2. 我们对隐藏域赋值,例如我们选择商品的时候,表面上显示的商品名称,代码中我们会对商品id的隐藏域赋值

$("input[name='goodsId']").val(data.goodsId);
bootstrapValidator这个插件不能捕获这样的“程序赋值事件”,所以这里不能达到验证的效果。

解决办法:

赋值之后触发一次“change”事件

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

修改bootstrapValidator验证代码

$("form").bootstrapValidator({
    excluded:[":disabled"],
    fields: {
        goodsId: {
            trigger:"change", //关键配置
            validators: {
                notEmpty: {
                    message: '请选择一个商品'
                }
            }
        }
    }
});


另外的解决办法

定义一个样式,使控件可见面积为0

input.validate_hidden { position:absolute; height:0; width:0; border:0; }
给控件加上此样式,使其等同于隐藏表单的效果

    <input name="goodsName" type="text"/>
    <input name="goodsId" class="validate_hidden">






  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值