在JSP中显示HTML代码(不要“呈现”HTML)

时间:2009-08-31 20:42:24

标签: html jsp

我有一个接受SQL查询的JSP页面,执行它们然后在表格中返回结果。一些结果偶尔会有HTML标签,即 - 结果将返回:

This is the returned result! I have <br> and <hr> tags!

如果通过代码处理返回并将其放入表中,它实际上会将<br><hr>标记“呈现”为HTML,但我希望它只是显示实际的<br><hr>代码。

目前,使用&lt;%= colvalue%&gt;

打印退货

我该怎么做?

5 个答案:

答案 0 :(得分:4)

如果您使用的是JSTL,<c:out>标记会默认转义您传递给它的内容。

E.g。

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

您还可以使用函数taglib

中的escapeXml el函数
 <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"  %>
 ${fn:escapeXml(someVarWithHtmlInIt)}

答案 1 :(得分:1)

I have &lt;br&gt; and &lt;hr&gt; tags!

答案 2 :(得分:1)

查看此页面以获取一个简单的方法,该方法将转义您传递给它的字符串: http://www.rgagnon.com/javadetails/java-0306.html

答案 3 :(得分:0)

您可以使用JSTL标记。它有一个escapeXML参数,可以执行您想要的操作。

答案 4 :(得分:-2)

在PHP中,您可以使用htmlentitieshtmlspecialchars