簡體   English   中英

MVC 3在ValidationSummary中顯示HTML

[英]MVC 3 Display HTML inside a ValidationSummary

我試圖在驗證摘要中顯示一個強標記,但它編碼並且無法正確顯示。

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

我怎樣才能讓它發揮作用?

最簡單的方法:

@if (!ViewData.ModelState.IsValid)
{
<div>@Html.Raw(HttpUtility.HtmlDecode(Html.ValidationSummary(false, "<strong>ERROR:<strong>The form is not valid!").ToHtmlString()))</div>
}

我發現了這個:

    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()
@Html.Raw(System.Web.HttpUtility.HtmlDecode((Html.ValidationSummary(false) ?? (object)"").ToString()))

您可以按照此問題的接受答案中的建議擴展ValidationSummary助手。

編輯:我認為輸入的任何文本的編碼是一個安全功能,因此是一件好事。

我有一個使用資源文件的網站。 在其中一個項目中,我將其放置為值: <img src="images/exclamation.png" > <strong>Pharmacy Name is required</strong>並且它有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM