проверка формы - требует, чтобы в каждой радиогруппе был установлен * определенный * переключатель - PullRequest
0 голосов
/ 24 сентября 2010

У меня есть форма с четырьмя вопросами «да-нет», например:

I am age 18 or older.  () Yes  () No

Фрагмент HTML:

<form>
...
<tr id="age_q">
  <td class="prompt">I am age 18 or older.</td>
  <td class="yesno">
    <input type="radio" name="age" value="yes" id="age_y" class="required">
    <label for="age_y">Yes</label>
    <input type="radio" name="age" value="no" id="age_n">
    <label for="age_n">No</label>
  </td>
</tr>
...

Это форма согласия; пользователь не может перейти на следующую страницу, если на все четыре вопроса не ответили «да». Я пытался применить это правило с помощью плагина jQuery + validator, но его понятие «требуется» для радиогрупп, кажется, было « некоторая кнопка проверена», а не « эта кнопка проверено. "

Может кто-нибудь предложить технику? Я не женат на jQuery + validator, я бы с удовольствием использовал какую-нибудь другую библиотеку, если бы она делала то, что я хочу легко. В идеале кнопка отправки должна быть включена только тогда, когда были отмечены все четыре переключателя «да». (PHB хотел, чтобы каждый из вопросов и кнопка окончательной отправки появлялись тогда и только тогда, когда была нажата предыдущая кнопка «да», но я думаю, что это будет ужасно и запутанно.)

1 Ответ

0 голосов
/ 24 сентября 2010

установите для радиостанций "нет" класс .no или что-то в этом роде:

if ($('.no:checked').length) {
     //not valid
} else {
    //valid
}

вот рабочий образец: http://jsbin.com/oguzi4/edit

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...