<%= Html.TextArea("text", "This is <b>Zeb</b>") %>
从上面的陈述我希望将文本框中的字符串显示为:
这是 Zeb 。
但实际上我得到的是
This is <b> Zeb </b>
我的字符串编码不正确。所以请有人告诉我问题在哪里?
我已从Professional ASP.NET MVC 4这本书中读到它。它在第100页。
答案 0 :(得分:3)
没有问题,这是预期的行为。以下是同一个问题:ASP.NET MVC3, Html.TextAreaFor without encoding?
答案 1 :(得分:0)
您的问题与编码无关。您告诉MVC(和浏览器)显示一个文本区域来编辑该字符串,这就是它正在做的事情。
如果您想要一个HTML编辑器,您的用户可以使用该编辑器编辑HTML(同时正确呈现它),您应该查看此帖子: What's the best WYSIWYG editor when using the ASP.NET MVC Framework?
基本上,您通常必须包含所选编辑器的.js和.css,并在您当前发送到更明亮的文本区域上激活它。这将创建一个类似于你在Wordpress中找到的编辑器。
编辑:
既然你已经编辑了你的问题,我认为你误解了这本书的内容。当它说您的文本已被编码时,它意味着&lt; &GT;字符已被翻译成&amp; LT;和&amp; GT;这样浏览器就不会将它们视为“打开HTML标记”和“关闭标记”。
如果您在浏览器中查看源HTML,您会看到字符串已正确编码(&amp; lt;和&amp; gt;)。