Ram7 from Hyderabad Ответов: 2

Как ограничить выбор двух или более флажков, когда массив флажков присутствует в представлении mvc3 rezor


Привет всем,
за последние 2 недели я начал изучать MVC3,я начал готовить страницу регистрации с помощью MVC3 Razor view,здесь пользователю нужно выбрать область интереса, для этого я поставил 4 флажка.Мое требование заключается в том, что мне нужно ограничить пользователя, чтобы выбрать только один флажок в любой момент времени, как я могу этого добиться....также попробуйте рассказать мне о возможных событиях, связанных с checkbox в mvc3 Razor


Спасибо
Раму

vijay__p

Если вы хотите, чтобы пользователь ограничился только одним выбором, то почему бы не использовать RadioButton вместо элемента управления Checkbox.

Ram7 from Hyderabad

Дорогой Виджай,спасибо за ответ ur мое требование только с флажком,я попробую с кодом ur,еще раз спасибо за ответ ur......

2 Ответов

Рейтинг:
12
Рейтинг:
11

vijay__p

И все же если вы хотите пойти с флажками то проверьте образец на jsFiddle
http://jsfiddle.net/vijaypatel/KtPsQ/[^]

Используйте нижеприведенную функцию для ограничения пользователя на один выбор

<input type="checkbox" id="chk1" class="chk" name="chk1" /> checkbox 1
<input type="checkbox" id="chk2" class="chk" name="chk2" /> checkbox 2
<input type="checkbox" id="chk3" class="chk" name="chk3" /> checkbox 3
<input type="checkbox" id="chk4" class="chk" name="chk4" /> checkbox 4


$('input.chk').change(function(){
        if($('input.chk').length > 1){
            $('input.chk').prop('checked',false);
            $(this).prop('checked',true);
        }
    });


Zoltán Zörgő

Это работает, но все еще не является хорошим ответом. Почему? Потому что это не вписывается в практику ASP.NET MVCx (как и ненавязчивая валидация), но прежде всего потому, что это решение "только на стороне клиента". Что делать, если пользователь отключает JavaScript, проверяет все и публикует форму.

vijay__p

Правда, если данные критичны, требуется проверка на стороне сервера. Есть вероятность, что пользователь отключил JavaScript и он не обрабатывается в приложении, тогда пользователь должен быть перенаправлен на какую-то страницу и должен быть уведомлен, чтобы включить ее.
И не кажется ли вам, что если JavaScript отключен, то большая часть функциональности приложения перестает работать? :)

Zoltán Zörgő

Тот, кто отключает JavaScript, является либо разработчиком, хакером, либо находится в среде с высоким уровнем безопасности. Вам не нужно отключать JS навсегда, вы можете отключить его только для того, чтобы обойти такие шаги проверки.