Asp.net MVC 3 RC - проблема проверки бритвы сообщение для пользовательского сообщения и проблема проверки клиентской стороны - PullRequest
21 голосов
/ 06 декабря 2010

ASP.Net MVC 3 RC, Razor

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

Так, скажем, у меня есть модель клиента, в которой имя FirstName установлено как обязательное.Если у меня есть следующий код, сообщение проверки не будет отображаться до тех пор, пока я не нажму «Отправить», которое работает, как ожидается.

@Html.EditorFor(model => model.Client.FirstName) @Html.ValidationMessageFor(model => model.Client.FirstName)

Но теперь скажите, что я хочу настроить сообщение проверки для использования звездочки, например:

@Html.EditorFor(model => model.Client.FirstName) @Html.ValidationMessageFor(model => model.Client.FirstName, "*")

Теперь еще до того, как я нажму кнопку отправки, рядом с полем всегда стоит звездочка.

Ожидается, что при появлении ошибки проверки будет отображаться звездочка.

Спасибо за любую помощь.

Ответы [ 2 ]

26 голосов
/ 07 декабря 2010

Я нашел проблему, нужен следующий CSS:

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

Где-то в моем рефакторинге те классы были уничтожены. Они находятся там по умолчанию, когда вы начинаете новый проект MVC 3. Надеюсь, что это поможет кому-то в будущем!

1 голос
/ 13 октября 2015

Выбранный ответ не работает для меня.Я должен был использовать следующее.Обратите внимание, что класс «ошибка», а не «действительный».Это скрывает сообщение проверки, отображаемое при загрузке страницы.

<style>
.field-validation-error
{
    display: none;
}
.validation-summary-valid
{
    display: none;
}

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