使用Undescore模板输出HTML

时间:2015-07-02 15:32:21

标签: underscore.js underscore.js-templating

我有一个JavaScript对象

"title": "Company<br />UK Sales &amp; Manufacturing"

然后在我的下划线模板中

h2 <%- _.unescape(rc.title) %>

呈现以下内容

Company<br />UK Sales & Manufacturing

知道如何让html正确呈现

提前致谢

1 个答案:

答案 0 :(得分:2)

来自fine manual

  

模板函数既可以使用<%= … %>插值,也可以使用<% … %>执行任意JavaScript代码。如果您希望插值并将其转换为HTML,请使用<%- … %>

因此,<%= ... %>无法自行执行任何HTML转义,如果您有一个HTML代码段,应直接在页面上显示:

<%= rc.title %>

<%- ... %>将对传入的文本进行HTML编码(即<br />变为&lt;br /&gt;),_.unescape用于解码HTML编码的文本(即&amp;变为{ {1}})所以你不想使用它们。你需要直接插值。