2010-04-06 2 views
2

У меня есть группа из 12 флажков с одинаковым именем (name = "4_RepPeriods"). Я использую плагин проверки JQuery, и я хочу, чтобы пользователь выбирал не более двух или менее двух этих флажков.Плагин проверки JQuery - требуется 2 флажка

Если возможно, я также хочу, чтобы другие флажки были деактивированы (unclickable) после того, как были выбраны два.

Я ценю помощь! Благодаря!

+0

Отключение других флажков кажется плохой идеей. что, если пользователь хочет изменить свой выбор после случайного проверки неправильного поля? –

+0

Ну, если они сняли флажок, то остальные снова включились. Но это дополнительная функция, которая не обязательна, в основном просто ищет быстрый и грязный способ убедиться, что 2 и только 2 флажка в этой группе выбраны и подтверждены с помощью проверки jQuery – jethomas

ответ

1

Вы можете использовать встроенные правила проверки для этого:

4_RepPeriods: { 
    minlength: 2, 
    maxlength: 2 
} 

В качестве альтернативы, вы можете добавить пользовательский метод, например:

$.validator.addMethod('select2RepPeriods',function(v, e) { 
    return $('[name="4_RepPeriods"]:checked').length == 2; 
}, 'You must select exactly 2 rep periods'); 

Тогда на вашей проверки, вы можете класть только это: select2RepPeriods: true.

+0

Блестяще, спасибо. – jethomas

+0

На самом деле извините, его не работает, независимо от того, сколько флажков я выбираю, он дает ошибку ... используя настраиваемый метод. – jethomas

+0

@jethomas - Обновлен пример работы с текущей версией плагина проверки, кажется, что вызов метода немного изменился. –

Смежные вопросы