表单校验的限制问题
$("#addForm").bootstrapValidator({
//excluded:[":hidden",":disabled",":not(visible)"] ,//bootstrapValidator的默认配置excluded:[":disabled"],//关键配置,表示只对于禁用域不进行验证,其他的表单元素都要验证
fields: {
productId: {
validators: {
notEmpty: {
message: '请选择一个商品' }
}
}
}
});
excluded:[":hidden",":disabled",":not(visible)"]-----------表示对表单里面隐藏的元素和禁用元素,不可见元素不进行校验
<input name="targetId" type="hidden">
<input name="targetName" type="text">
在选择指标之后会在targetName里面展示指标名称给用户看,而在targetId这个隐藏域里面放一个指标的ID。
一般情况下这样的操作是由程序来完成的,
$("input[name='targetId']").val(data.targetId);
bootstrapValidator这个插件不能捕获这样的“程序赋值事件”,所以这里不能达到验证的效果,所以我们需要做一个小小的变通:
$("#addForm").bootstrapValidator({
//excluded:[":hidden",":disabled",":not(visible)"] ,//bootstrapValidator的默认配置excluded:[":disabled"],//关键配置,表示只对于禁用域不进行验证,其他的表单元素都要验证 fields: {
targetId: {
trigger:"change",//问题2.关键配置
validators: {
notEmpty: {
message: '请选择一个指标' }
}
}
}
});