使用下划线隐藏的div并且没有脚本模板

时间:2014-09-21 15:23:10

标签: javascript jquery html underscore.js underscore.js-templating

我想使用下划线隐藏的div而不是脚本模板,即代替:

<script type="text/template" id="fooTemplate">
    <h2><%= title %></h2>
    <p>
        <img src='<%= img %>' width='95' height='150'>
        <br/><br/>
        by <strong><%= autor %></strong>
        <br/><br/>
        <i><%= date %></i>
        <br/><br/>
        <%= description %>
    </p>
 </script>

使用此:

 <div id="fooTemplate" style="display:none">
    <h2><%= title %></h2>
    <p>
        <img src='<%= img %>' width='95' height='150'>
        <br/><br/>
        by <strong><%= autor %></strong>
        <br/><br/>
        <i><%= date %></i>
        <br/><br/>
        <%= description %>
    </p>
 </div>

如果我得到变量并使用html()或.text(),我会得到以下内容并遇到以下问题:

的.html()

<h2>&lt;%= title %&gt;</h2>
<p>
    <img src="<%= img %>" height="150" width="95">
    <br><br>
    by <strong>&lt;%= autor %&gt;</strong>
    <br><br>
    <i>&lt;%= date %&gt;</i>
    <br><br>
    &lt;%= description %&gt;
</p>

的.text()

<%= title %>

    by <%= autor %>

    <%= date %>

    <%= description %>

使用.text()html我输了,但打印变量的值,而html()没有抓住我打印值下划线的语法。我已经解决了以下问题:

$("#fooTemplate").html().replace(/&lt;/g, "<").replace(/&gt;/g, ">");

解决问题的其他解决方案或其他形式的隐藏部分作为模板加载下划线?

0 个答案:

没有答案