You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EJS站点中WYSIWYG编辑器存储的HTML显示为纯文本问题求助

EJS站点中WYSIWYG编辑器内容显示纯文本的解决办法

你遇到的问题核心是EJS模板的转义机制:

  • 你使用的<%= post %>语法会自动对HTML内容进行转义,把<、>这类HTML标签符号转换成&lt;、&gt;实体字符,导致通过innerHTML插入时,这些转义后的内容被当成纯文本展示,而非渲染成HTML元素。
  • 手动编写的HTML字符串没有经过转义处理,所以能正常渲染成页面元素。

修复步骤

将代码中的<%= post %>替换为<%- post %>即可:

<div id="innerdiv"></div>
<script>
    const nowWorks = "<%- post %>";
    document.getElementById("innerdiv").innerHTML += nowWorks;
</script>

<%- %>是EJS提供的非转义输出语法,会直接输出数据库中存储的原始HTML内容,不会对特殊字符进行转义,这样innerHTML就能正确解析并渲染出WYSIWYG编辑器生成的HTML结构了。

内容的提问来源于stack exchange,提问作者Gregory

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 02:14:59