ASP.NET MVC 3 – 隔离HTML.Raw输出
发布时间:2020-12-16 09:39:37 所属栏目:asp.Net 来源:网络整理
导读:我正在开发一个系统,用户可以在系统中向系统提交 HTML,然后“预览”生成的页面.用户提交的HTML通过在视图中调用HTML.Raw提供给页面,其中它显示为包含其他数据的表的一部分.在一个天真的实现中,它显示如下: ... td div@Html.Raw(UserEnteredHTMLIsFetchedHer
我正在开发一个系统,用户可以在系统中向系统提交
HTML,然后“预览”生成的页面.用户提交的HTML通过在视图中调用HTML.Raw提供给页面,其中它显示为包含其他数据的表的一部分.在一个天真的实现中,它显示如下:
... <td> <div>@Html.Raw(UserEnteredHTMLIsFetchedHere)</div> </td> ... 我遇到的问题是用户输入的HTML不保证没有错误(事实上远非它).如果用户在HTML中输入未关闭的div标签然后进行预览,则Html.Raw返回的未关闭标签将在Html.Raw调用之外的/ div上关闭,并在整个页面上创建不正确的嵌套. 我正在寻找一种方法来隔离Html.Raw的输出,以便未封闭的标签不会干扰页面的其余部分. 我试图使用iframe标签来实现这一点(将src设置为编码的HTML),但它对CSS不起作用.我希望页面的现有CSS尽可能保留在隔离的HTML中. 我不确定这是否是Html.Raw甚至应该被使用的方式,但这是我正在修改的实现,而不是创建,我希望保留尽可能多的原始实现. 解决方法
显示用户输入的HTML而不影响您的视图的最佳选择是使用IFrame.你可以手动
set the content of an IFrame using Javascript.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – [HttpPost] public ActionResult Create(Fo
- 缓存asp.net c#的数据列表
- asp.net-mvc-3 – 剃刀引擎 – 如何根据不同的条件渲染不同
- .NET MVC购物车
- 将.net核心连接到SSAS
- asp.net-mvc-3 – ASP.NET MVC 3中ModelState.IsValid的限制
- 如何使ASP.NET HTML代码不能被客户端(用户)查看
- asp.net-mvc – 如何更好地控制DotNetOpenAuth如何使用Micr
- asp.net – NPOI – 从模板文件创建的保存工作簿
- asp.net – 授权属性中的UrlHelper和ViewContext
推荐文章
站长推荐
热点阅读