bootstrap 动态添加验证项

时间:2015-07-09 19:42:40   收藏:0   阅读:109

   bootstrap 中的bootstrapValidator可以对前端的数据进行验证,但是有的时候我们需要动态的添加验证,这样需要我们动态的对bootstrapValidator的内容做修改。

  传统的bootstrapValidator验证是

  

 $(#MaintainEntryForm).bootstrapValidator({
        message: 输入值无效!,
        feedbackIcons: {
            valid: glyphicon glyphicon-ok,
            invalid: glyphicon glyphicon-remove,
            validating: glyphicon glyphicon-refresh
        },
        fields: {
            Specifications: {
                validators: {
                    notEmpty: { message: 请输入规格! }
                }
            },
            ProductNameEN: {
                validators: {
                    notEmpty: { message: 请输入英文名称! }
                }
            },
            ApplyUnit: {
                validators: {
                    notEmpty: { message: 请输入申报单位! },
                    stringLength: {
                        min: 1,
                        max: 3,
                        message: 申报单位最多输入3位!
                    }
                }
            },
            SuttleWeight: {
                validators: {
                    notEmpty: { message: 请输入净重! },
                    //regexp: { regexp: /^\d{0,8}\.{0,1}(\d{1,3})?$/, message: ‘净重只能输入大于等于0的整数或者3位小数!‘ },
                    callback: {
                        message: 净重只能输入大于0的整数或者3位小数!,
                        callback: function (value, validator, $field) {
                            var reg = /^\d{0,8}\.{0,1}(\d{1,3})?$/;
                            return parseFloat(value) > 0 && reg.test(value);
                        }
                    }
                }
            }
        }
    }).on("success.form.bv", function (e) {
        if (EntryInfo.SaveType == 1) {
            EntryInfo.SaveEntryInfo();
        }
        else if (EntryInfo.SaveType == 2) {
            EntryInfo.SaveAndSubmitAudit();
        }
    });

  这样的验证在页面有交互的需求的时候不能够满足条件,所以我们需要动态的对验证条件进行修改,这里的做法是先把所有可能用到的条件先全部添加进去,在指定条件下去除筛选条件。

  去除方式

$(#MaintainEntryForm).data(bootstrapValidator).validateField(ApplyUnit);

  这样 名称为ApplyUnit的验证凡是就不会起作用了

  记录点点滴滴

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!