Вам необходимо использовать метод dependency-callback плагина проверки.
Что это позволит вам сделать:
Делает элемент обязательным, в зависимости от результата данного обратного вызова.
Затем вы можете поместить правило проверки required
в 3 поля, которые говорят, что это поле будет необходимо только на основе возврата из функции обратного вызова; Затем вы можете поместить правило в поля, чтобы сказать, требуется ли это поле, если любое из полей не пустое return true
, или не требуется это поле, если все поля не заполнены return false
Таким образом, если какое-либо из полей заполнено, все они становятся обязательными, если все они оставлены пустыми, ни одно из них не требуется.
rules: {
flickr_set: {
required: function(element) {
return ($("#flickr_set").is(':empty') && $("#flickr_id").is(':empty') && $("#flickr_photos-count").is(':empty') ? false : true);
}
},
flickr_id: {
required: function(element) {
return ($("#flickr_set").is(':empty') && $("#flickr_id").is(':empty') && $("#flickr_photos-count").is(':empty') ? false : true);
}
},
flickr_photos-count: {
required: function(element) {
return ($("#flickr_set").is(':empty') && $("#flickr_id").is(':empty') && $("#flickr_photos-count").is(':empty') ? false : true);
}
}
}