我需要用HTML替换一个简单的字符串(来自twitter Bootstrap的glyphicon元素)。我使用标准的c#.Replace()
方法如下:
.Replace("chkbox", "<span class=\"glyphicon glyphicon-check\"></span>")
但在我的浏览器中,它显示为文本<span class="glyphicon glyphicon-check"></span>
,而不是将其呈现为HTML。当我'检查'元素时,它显示为<span class="glyphicon glyphicon-check"></span>
我尝试过使用Html.Raw()
,MvcHtmlString.Create()
,.ToHtmlString()
,但这些都不起作用。
我相信唯一的方法是创建我自己的.Replace(string old, HTMLString new)
方法,或类似的东西。我的mvc应用程序在哪里/如何编写这种方法?
答案 0 :(得分:2)
默认情况下,MVC不会输出原始HTML,但会对其进行编码。
要达到您的要求,您需要显式输出原始html。
Html.Raw(MyString.Replace("chkbox", "<span class=\"glyphicon glyphicon-check\"></span>"))