我正在使用角度v1.5.6。我有一些用户输入了html数据以及存储在数据库中的特殊字符。为了说明,
var txt = "<span class='txt_bold'> content with <lessthan signs<span> <span>";
var txt1 = "<span class='txt_bold'> content with <4 lessthan >greaterthan signs <span>";
当我在ng-bind-html指令中放置两行时,我得到的输出如下。
txt : content with
txt1 : content with <4 lessthan >greaterthan signs
我们可以看到txt
中<(小于)号后的单词被指令删除。
我尝试了以下线程中提供的解决方案。但是,它们都不对我有用,以保持html css效果正常工作。
任何提示将不胜感激。
答案 0 :(得分:0)
<span class='txt_bold'> content with <lessthan signs<span> <span>
我们可以看到txt中<(小于)号后的单词已被指令删除
那是不正确的。该字符串实际上被解析为:
<span class="txt_bold">
content with
<lessthan signs<span>
<span></span>
</lessthan>
</span>
<lessthan
未被删除;它被解析为<lessthan>
标签。它没有被删除;它被渲染为空。
要退出解析,请使用html entities:
<lessthan
有关更多信息,请参见MDN Web API Reference - innerHTML operational details