Я пишу систему, использующую jQuery Validation, которая использует пользовательские правила, сообщения через jSON и динамически проверяет несколько форм на отдельных страницах. Все идет гладко, за исключением того, что я не могу найти приличную информацию о правильном синтаксисе для пользовательских правил ....
Например:
Я знаю, что это работает ....
"ui_txt_GCPostcode": {
"required": "input[name=ui_rb_ItemAddress][value=Recipient]:checked"
}
Я говорю здесь, что ui_txt_GCPostcode
требуется только тогда, когда установлен переключатель из списка с именем ui_rb_ItemAddress
и значением Recipient
.
Мне кажется, что я могу назначать правила на основе выражений зависимостей , содержащих определенные атрибуты селектора.
Это, однако, не работает .....
"ui_sel_PCSelect": {
"required": "input[name=ui_txt_PostCodeSearch]:hidden, input[name=ui_txt_Address]:hidden"
}
Валидатор запускается, хотя у меня есть ui_txt_Address
видимым.
Я даже настраиваю валидатор со скрытым свойством ignore , например.
// Validate the form once the defaults are set.
$validator = $form.validate({
// This prevents validation from running on every
// form submission by default.
onsubmit: false,
messages: messages,
rules: rules,
errorContainer: $container,
errorLabelContainer: $("ol", $container),
wrapper: "li",
// Ignore hidden items. Why is this not working??
ignore: ":hidden"
});
Есть идеи? У меня довольно сжатые сроки, и я начинаю паниковать.