自定義預設值
Overriding jQuery validation highlight / unhighlight methods
Ex. 讓jQuery validate和 act-bootstrap錯誤顯示能相容
jQuery.validator.setDefaults({
errorElement: 'div',
errorClass: 'help-block',
highlight: function(e) {
$(e).closest('.form-group').removeClass('has-info').addClass('has-error');
},
success: function(e) {
$(e).closest('.form-group').removeClass('has-error');
$(e).remove();
}
});
依據別欄位的值而決定是否必填
jquery validate plugin require field if another field has a value and vice versa
http://stackoverflow.com/questions/10406089/jquery-validate-plugin-require-field-if-another-field-has-a-value-and-vice-versa
Ex. 在 $("form select[name='status']") 值為4時,remark必填
$('form').validate({
rules: {
remark: {
required: {
depends: function(element) {
return $("form select[name='status']").val() === "4"
}
}
}
},
messages: {
remark: {
required: "備註必填" // 只有在 $("form select[name='status']") 值為4時才必填
}
}
});
客製化驗證方法
http://stackoverflow.com/questions/17561615/creating-a-custom-rule-in-jquery-validate
Ex. 輸入日期不能為未來日期
jQuery.validator.addMethod("endDateToday", function(value, element) {
//Your Validation Here
var open_time = new Date(value);
var today = new Date();
if (open_time > today) {
return false; // return bool here if valid or not.
} else {
return true; // return bool here if valid or not.
}
}, "不能輸入未來日期"); // 預設的錯誤訊息
$('form').validate({
rules: {
open_time: {
endDateToday: true
}
}
});
沒有留言:
張貼留言