例如下拉框值为""或"0"的时候,表示未选中,但是required只能对空值进行验证,这时候就可以使用addMethod,自己添加检验规则;
$.validator.addMethod( "isNot0",function(value,element){
if (value !== '0') {
return true;
}
} , "请选择所属部门");
varData.$validate = $("#baseForm").validate({
rules: {
acceptDeptId: {
required: true,
isNot0: true
},
},
messages: {
acceptDeptId: {
required: "请选择所属部门"
}
},
});
注意jQuery Validate 对于 readonly,disabled的表单元素都不生效;
// 先解决validate 与 readonly, disabled 冲突问题
$('#lastFinishTime').attr('readonly', false);
$('#acceptDeptId').attr('disabled', false);
setTimeout(function () {
// 恢复readonly, disabled属性
$('#lastFinishTime').attr('readonly', true);
$('#acceptDeptId').attr('disabled', true);
});
// 再进行表单验证
if (varData.$validate.form()) {}