Firebug показывает мне следующее:
Из последующей инициализации валидатора:
$("#surveyForm").validate({
errorPlacement: function(error, element) {
if ( element.is(":radio") ) {
error.appendTo ( '#' + element.attr('name') + '_multiError' );
} else if ( element.is(":checkbox") ) {
error.appendTo ( '#' + element.attr('name') + '_multiError' );
} else {
error.appendTo( element.parent() );
}
},
rules: {
ans_23: {
depends: function(element) {
return $("#ans_22:checked")
}
}
},
debug: true
});
Правило основано на втором примере в правилах здесь .
HTML-код, на который ссылаются, выглядит так
<td class='two_columns'>
<label>
<input type='radio' name='rad_22' id='ans_22' class='required' value='Yes' /> Other
</label>
<input type='text' name='ans_23' id='ans_23' value='' class='' />
</td>
Кто-нибудь знает, почему метод зависимости не определен?
Сноска. Я также попытался сделать это с помощью метода добавления правил (см. Ниже). Эта форма проверяется и не выдает ошибок при вызове validate (), а ans_23 не получает «требуемый» класс ....
$("#surveyForm").rules("add", {
ans_23: {
required: "#ans_22:checked"
}
});