Как остановить ValidationMessageДля отображения сообщения об ошибке при загрузке?

#asp.net-mvc #validation #view

#asp.net-mvc #проверка #Вид

Вопрос:

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

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

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

Ответ №1:

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

Ого!!

Ответ №2:

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

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

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

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

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

Комментарии:

1. Я долго и упорно искал, и ваш ответ действительно помог мне, такой простой, но такой сложный для устранения неполадок. Спасибо. Поддержано!