.NET MVC/Javascript从动态HTML中转义单引号
.NET MVC /Javascript escape single quotes from dynamic HTML
我从服务器上得到一些动态HTML,我想把它放在iframe中。这项工作:
document.getElementById('iframe').contentWindow.document.write('@Html.Raw(Data)');
问题是数据(我收到的HTML)可能包含"answers",这将与我的HTML数据相冲突。有什么方法可以解决这个问题吗?
在Razor视图中用JavaScript编码值的可靠方法是使用Json.Encode()
:
document.getElementById('iframe')
.contentWindow.document.write(@Html.Raw(Json.Encode(Data)));
请注意,该值周围没有'
,因为Json.Encode()
创建了一个有效的JavaScript文本。
我自己解决了这个问题。我使用了@Html.JavaScriptStringEncode
:)
相关文章:
- 附加 HTML 转义文本:jQuery
- Javascript/PHP中的HTML转义/编码
- innerhtml 忽略了 HTML 转义字符
- HTML 转义中的 JSON
- Javascript HTML 转义但保留换行符
- Flask 模板中的动态 HTML 转义
- JavaScript HTML转义按钮
- AngularJs过滤器:$viewValue没有处理html转义
- i18next html转义-服务器端生成的需要
- 是用户输入的带有Javascript的HTML显示给其他人,而不是HTML转义的XSS示例
- 什么是replaceAll性能秘诀?[HTML转义]
- JQuery -用html转义替换引号
- 为什么在html转义中“&”应该首先转义
- 如何找出一个给定的字符串是否被HTML转义
- 当通过Javascript输出JSON内容时,我应该在服务器端还是客户端进行HTML转义
- 我如何获得未转义JSON内容的html转义JSON数据
- 在HandleBars JS中处理HTML转义值
- 在进行正则表达式检查时需要进行html转义
- 胡子:全局禁用 html 转义
- 如何修复谷歌美化处理HTML转义序列