javascript - pugjs 渲染转义的 html 和正常的 html
问题描述
例如,pug
我将变量作为已经转义的 html 取回line one <br>\nline two <br>\n<p> with paragraph </p>
在pug
我自己的模板中,我使用!{description}
了未转义的 html,例如line one <br>
line two <br>
<p> with paragraph </p>
但这不是我想要的,我不想tag
在视图中显示,而是我想要类似的东西
line one
line two
with paragraph <!-- this is hard to show -->
我也用谷歌搜索并认为jquery
像这样使用会起作用,但不行。
const gd = !{JSON.stringify(description)};
$('#des').html(gd).text();
上面仍然显示标签而不是将其用作 html。
有谁知道如何使这项工作?
提前感谢您的任何帮助/建议。
解决方案
这里的问题是,由于它是转义的 HTML,浏览器会这样渲染它。如果您尝试使用 jQuery 在客户端执行此操作,则它需要将未转义的 HTML 作为文本。如果您为它提供转义的 HTML,它无论如何都会呈现为纯文本。
但是,您可以使用 Pug 文件中的一些 javascript 将转义值替换为它们各自的符号。
div#des!=description.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, "'")
此处的类似问题提供了在这种情况下使用的答案。
推荐阅读
- html -
- 在没有换行的情况下不显示在 ie 8 中
- 在没有换行的情况下不显示在 ie 8 中
- c# - 在代码隐藏中设置属性的按钮不触发点击事件
- python - AttributeError:'NoneType'对象没有属性'get'-python中基于文本的交互式故事
- java - JavaFX:如何给多个相同大小的圆圈?
- reactjs - ReactJS:在道具更改时运行函数而不使用已弃用的 componentWillReceiveProps
- powershell - 解析日志文件并提取powershell
- python - Python根据现有列的条件计算新列
- git - 如何在代理后面提交、推送和克隆
- terraform - 在 terraform 控制台中获取局部变量
- python-3.x - 如何让 word2vec 加载字符串?问题:'dict'对象没有属性'_load_specials'