Как остановить ValidationMessage для отображения сообщения об ошибке при загрузке? - PullRequest
3 голосов
/ 04 ноября 2011

Я добавил сообщение проверки «Пользовательская ошибка CountryId» в представление. Проблема в том, что он отображается, когда я загружаю представление изначально, а также на POST.

<div class="editor-field">
@Html.DropDownList("CountryId", Model.GetCountries, "Please select", "0")
@Html.ValidationMessageFor(m => m.CountryId, "CountryId custom error")
</div>

Как сделать так, чтобы оно отображалось только на POST? Если я опускаю сообщение проверки, представление ведет себя правильно, показывая ошибку по умолчанию на POST.

Ответы [ 2 ]

2 голосов
/ 04 ноября 2011

Этот проект был создан как пустое приложение MVC, и я удалил site.css и снова начал. Вы не можете сделать это, если хотите, чтобы проверка работала, поскольку в main.css есть жизненно важный файл css, который скрывает сообщения!

Doh !!

1 голос
/ 28 июня 2017

Вот классы CSS, используемые ValidationMessageFor. Их легко потерять при копировании через CSS из других проектов.

    .field-validation-error {
        color: red;
        font-weight: bold;
    }

    .input-validation-error {
        background: pink;
    }

    .validation-summary-valid {
        display: none;
    }

    .field-validation-valid {
        display: none;
    }
...