Проверка MVC и Jquery: Отключенные выпадающие списки проверяются, как этого не происходит - PullRequest
2 голосов
/ 23 марта 2012

Сначала я использую MVC3, модель EF.

У меня есть форма с двумя DropDownList, которая отключается в зависимости от того, какое значение пользователь выберет в другом раскрывающемся списке, я использовал Jquery, вот код:

$(function () {
    $('#SubjectTypeName').change(function () {
        var value = $(this).val();
        if (value == '2') {
            $('#TeamName, #ConsultantName').removeAttr('disabled');
        } else if (value == '3') {
            $('#TeamName').attr('disabled', 'disabled');
            $('#ConsultantName').attr('disabled', 'disabled');
        } else if (value == '4') {
            $('#TeamName').attr('disabled', 'disabled');
            $('#ConsultantName').attr('disabled', 'disabled');
        }

        $(".questionsForSubjectType").hide();
        $("#questionsForSubjectType_" + value).show();
    });

})

Но когда DropDownList отключен, и я нажимаю на следующую страницу, отключенные DropDownLists проверяются с помощью стандартной проверки Jquery MVC, которая у меня есть. Я сделал проверку, объявив [Обязательный] в моих свойствах в моей ViewModel для этой проверки. Как я могу предотвратить проверку в моих отключенных списках DropDownlist, но при этом убедиться, что DropDownLists проверяется, если они включены

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 23 марта 2012

Является ли атрибут [Required] в поле для раскрывающегося списка?Возможно, удаление этого может помочь, если это так.

Вы также можете рассмотреть возможность заполнения частичных представлений на основе пользовательского ввода.

0 голосов
/ 23 марта 2012

происходит ли проверка MVC на стороне клиента или на стороне сервера?На стороне сервера вы можете проверить, использовался ли dropdown_A, ModelState.Remove("dropdown_B");, тогда ваш ModelState.IsValid будет истинным.

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