支架/快递/ EJS将html转换为其实体

问题描述 投票:1回答:1

我在博客上使用了具有Express和EJS的Cradle。也许我错过了smth,但是其中一些将html实体转换为其等效项。

我在doc.quote字段中有html,并且在这段代码之后它发生了变化

quotesDb.view('list/by_date', {
    'startkey' : {},
    'endkey' : null,
    'descending' : true
}, function(err, res) {
    if (err) {
        r.send();
        return;
    }

    r.partial('quotes', {'quotes' : res}, function(err, str) {
        console.log(str);
        sendResponse('content', str);
    });
});

quotes.ejs:

<% for (var i=0; i<quotes.length; i++) { %>
    <div>
        <%=quotes[i].value.quote%>
    </div>
    <div class="date">
        <%=(new Date(quotes[i].value.ts*1000)).toLocaleDateString()%><% if (quotes[i].value.author) { %>, <%=quotes[i].value.author%><% } %>
    </div>
<% } %>

“ res”变量是一个数组,其中的对象带有“ content”字段(具有html)。但是在渲染“ str”后,将“ quotes [i] .value.quote”符号转换为它的实体,例如
到&lt; br&gt;

node.js express ejs cradle
1个回答
10
投票

答案在这里找到:http://groups.google.com/group/express-js/browse_thread/thread/f488d19a1604c30e?pli=1

用于转义的渲染:

<%=var%>

用于渲染而不进行转义:

<%-var%>
© www.soinside.com 2019 - 2024. All rights reserved.