【问题标题】:HTML tag not working displaying as a text on browserHTML 标记无法在浏览器上显示为文本
【发布时间】:2013-08-02 05:43:15
【问题描述】:

我正在使用html tags 将文本存储在数据库中。在显示它们时,标签不起作用,它们显示为文本。

数据库数据:

<p>send the document to:</p><p> bay area, </p><p> tampa</p>

当我在jsp 上显示它时,它与p tags 一样显示

预期:

将文件发送至:
湾区,
坦帕

实际:

<p>send the document to:</p><p> bay area, </p><p> tampa</p>

【问题讨论】:

  • 向我们展示呈现 html 的相关代码。
  • 你能展示一下数据库表中的值是如何存储的吗?
  • 我将文本“

    send the document to:

    bay area,

    tampa

    ”存储在数据库中。
  • 我使用普通的html标签来显示文本
  • @user2644654:向我们展示代码。代码很重要。 HTML 标记不会从 Java 对象生成文本。这就是我们感兴趣的部分。

标签: html jsp tags


【解决方案1】:

您可以使用 JSTL 来不转义 HTML 字符串。例如:

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<c:out value="${yourHTMLString}" escapeXml="false"/>

但要小心 XSS 攻击。

【讨论】:

  • 更简单:删除 c:out,只需使用 ${yourHTMLString}:c:out 唯一要做的就是转义 HTML。如果您不想转义,请不要使用 c:out。
猜你喜欢
  • 2017-12-23
  • 2020-11-23
  • 1970-01-01
  • 2023-04-04
  • 2014-05-25
  • 1970-01-01
  • 1970-01-01
  • 2014-01-21
  • 1970-01-01
相关资源
最近更新 更多