Пользовательский шаблон ValidationMessageFor - PullRequest
1 голос
/ 19 ноября 2010

Я использую ASP.NET MVC 3 прямо сейчас с ненавязчивой проверкой клиента jquery.

По умолчанию ValidationMessageFor генерирует тег span с определенными классами и установленными атрибутами.Я хотел бы создать другой шаблон вместо этого.Например, мне может понадобиться тег div с определенным фоновым изображением.

Возможно ли это вообще, или я могу просто получить оттуда сообщение об ошибке в виде простого текста, чтобы я мог выполнить собственный стиль?

Спасибо

1 Ответ

0 голосов
/ 19 ноября 2010

В MVC 2 span жестко закодировано.Нет способа использовать div вместо ValidationMessageFor.

. Вы можете получить сообщение, подобное тому, как это делает встроенный помощник:

if (modelError != null) {
    builder.SetInnerText(GetUserErrorMessageOrDefault(htmlHelper.ViewContext.HttpContext, modelError, modelState));
}

    private static string GetUserErrorMessageOrDefault(HttpContextBase httpContext, ModelError error, ModelState modelState) {
        if (!String.IsNullOrEmpty(error.ErrorMessage)) {
            return error.ErrorMessage;
        }
        if (modelState == null) {
            return null;
        }

        string attemptedValue = (modelState.Value != null) ? modelState.Value.AttemptedValue : null;
        return String.Format(CultureInfo.CurrentCulture, GetInvalidPropertyValueResource(httpContext), attemptedValue);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...