HTML 标记从字面上显示在浏览器中


<div id="list_content" readonly="readonly" style="resize: none;"><%= lists.content %></div>

这是我的 html 代码,并从节点.js服务器获取列表变量。如果数据库中的内容<p>This is test</p>则不会解析 HTML,而是显示<p>This is test</p>

如果你想将html传递给ejs,请使用<%- lists.content %>而不是<= lists.content %>

要了解不同类型的 EJS 标签,请查看此处:http://ejs.co/

在html中,'是一个特殊的chacacter。您应该在显示之前对 html 进行 html 编码。

您可以使用以下 htmlencode 函数:

function htmlEncode(string) {
return string.replace(/&/g, '&amp;').replace(/"/g, '&quot;').replace(/'/g, '&#39;')
.replace(/</g, '&lt;').replace(/>/g, '&gt;');
}

像这样使用它:

<%= htmlEcode(lists.content) %>

相关内容

最新更新