MVC 3 Отображение HTML внутри ValidationSummary - PullRequest
10 голосов
/ 15 февраля 2011

Я пытаюсь отобразить сильный тег в сводке проверки, но он кодирует его и не отображается должным образом.

@Html.ValidationSummary(false, "<strong>ERROR:<strong>The form is not valid!")

Как мне заставить это работать?

Ответы [ 5 ]

31 голосов
/ 31 октября 2013

Самый простой способ:

@if (!ViewData.ModelState.IsValid)
{
<div>@Html.Raw(HttpUtility.HtmlDecode(Html.ValidationSummary(false, "<strong>ERROR:<strong>The form is not valid!").ToHtmlString()))</div>
}
6 голосов
/ 01 августа 2012

Я нашел это:

    public static MvcHtmlString ToMvcHtmlString(this MvcHtmlString htmlString)
    {
        if (htmlString != null)
        {
            return new MvcHtmlString(HttpUtility.HtmlDecode(htmlString.ToString()));
        }
        return null;
    }

, а затем:

@Html.ValidationSummary(false, "<strong>ERROR:<strong>The form is not valid!").ToMvcHtmlString()
5 голосов
/ 18 ноября 2013
@Html.Raw(System.Web.HttpUtility.HtmlDecode((Html.ValidationSummary(false) ?? (object)"").ToString()))
4 голосов
/ 15 февраля 2011

Вы можете расширить вспомогательный ValidationSummary, как было предложено в принятом ответе на этот вопрос .

Редактировать: Я предполагаю, что кодировка любого введенного текста является функцией безопасности и, следовательно, полезной.

0 голосов
/ 20 января 2015

У меня есть сайт, который использует файлы ресурсов для языка.В одном из предметов я поместил это для значения: <img src="images/exclamation.png" > <strong>Pharmacy Name is required</strong>, и оно работает.

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