我在项目中使用ASP.NET MVC。我使用Html.Encode显示一些文本内容,在编辑时我发现文本并将其显示在编辑文本框中。
这是我的问题,如果文字包含一些特殊字符,比如 ,则编辑时显示为<hello>
,但我想显示与 <相同的字符/ p>
我该怎么做?
答案 0 :(得分:1)
在将其显示给用户之前,您需要对其进行解码。
Javascript本身不解码html
答案 1 :(得分:0)
<%= Html.TextAreaFor(model=>model.PropertyName) %>
<textarea>
<%= your_variable %>
</textarea>
对input.type = text
也可以这样做或强>
无论你采用什么方式,在文本框/ textarea中显示你的数据都没有必要做Html.Encode。 Html.Encoding基本上是为了避免注入恶意用户试图注入ur页面的脚本。但是在textarea / input.type = text
的情况下没有这样的问题答案 2 :(得分:0)
Html.Encode()不支持防止像PHP htmlentities()函数那样对HTML实体进行双重编码的选项。您需要先解码字符串,或者编写一个不会对字符进行双重编码的自定义HTML帮助程序。