bootstrap-validator

使用bootstrap-validator挺多的,虽然本身写认证并不复杂,我一贯喜欢现成的控件,缘由是风格一致,不容易出错。java

这个是接口文档:http://bv.doc.javake.cn/settings/bootstrap

有时候须要本身写认证: 这里面涉及两个字段之间的联合认证。(因为这个联合验证是验证两个字段非一致,而callback函数则是针对某个字段验证的,因此某个字段改变会致使两个字段都进行验证。)函数

自定义一个触发条件onvalid,当两个字段之间任何一个改变,就会触发两个字段的验证。spa

 
 
$('#dropdownMenu1').on("onvalid");
$('#dropdownMenu2').on("onvalid");
 
 
$('#dropdownMenu1').onchange(function(){  
$('#dropdownMenu1').trigger("onvalid")
 
$('#dropdownMenu2').trigger("onvalid")

})
 
 
$('#dropdownMenu2').onchange(function(){  
$('#dropdownMenu1').trigger("onvalid")
  $('#dropdownMenu2').trigger("onvalid")
})

$('#form1').bootstrapValidator({
fields: {

endpointA_sub: {
selector: '#dropdownMenu1',
message: '',
trigger:'onvalid',
validators: {
callback: {
message: '请选择节点',
callback:function(value, validator){
if ($('#dropdownMenu2').attr('value')!="")
return ($('#dropdownMenu1').attr('value')!=$('#dropdownMenu2').attr('value') && value!=="")
else
return value!==""
}
}
}

},
endpointB_sub: {
selector: '#dropdownMenu2',
message: '',
trigger:'onvalid',
validators: {
callback: {
message: '请选择节点',
callback:function(value, validator){
if ($('#dropdownMenu1').attr('value')!="")
return ($('#dropdownMenu1').attr('value')!=$('#dropdownMenu2').attr('value') && value!=="")
else
return value!==""
}
}
}
},

    }
});
相关文章
相关标签/搜索