ASP.NET MVC 给ViewBag赋值Html字符转义问题

我的viewbag存的是html代码,前台页面不解析html,直接转义了html的代码,肯定,是前台或者后台需要转义一下!

今天再给自己总结一下,关于ViewBag赋值Html格式值,但是在web页显示不正常;

例如,ViewBag.Content = "<p>你好,我现在测试一个东西.</p>";

前台页面<div>@VIewBag.Content</div>

结果在页面上显示:<p>你好,我现在测试一个东西.</p>,通过火狐编辑的时候发现,源码为,&lt;p&gt你好,我现在测试一个东西.&lt;/p&gt

这样显然不是我们想要的,而且这样对应通过编辑器保存到数据库中的Html格式字段,取出之后不能显示正确的样式;

在网上翻查一遍找到解决方法

<div>@Html.Raw(ViewBag.Content)</div>

这样显示就正常了

2. 引号需要单独处理,因为引号需要变成转义字符(\")但是实际在前台显示时确是(")

会发生异常,如果是图片是的话将双引号(")替换成单引号(')

原文地址:https://www.itsvse.com/thread-2887-1-1.html

posted on 2018-01-17 16:09  风付过款  阅读(1978)  评论(0编辑  收藏  举报