如何使用JSTL动态插入html代码?

时间:2018-08-04 16:32:03

标签: html jsp jstl

我正在学习 [JSTL] ,并停留在一个String包含HTML代码的地方。

以下是我正在编写的代码以及正在实现的结果。

<c:set var = "str" scope = "session" value = "<div><b>Hello</b></div>"/>  
<c:out value="${str}"></c:out>

输出为:

<div><b>Hello</b></div>

但是,我想要的实际输出是:你好

在[JSP]中使用Java代码时,我实现了此输出。由于在JSP页中编写Java代码不是一种好习惯,因此需要JSTL

更新:我正在探索JSTL,发现了一个名为 escapeXml 的东西。此属性可以与<c:out>一起使用以使用HTML / XML内容。

以下是示例:

<c:set var = "str" scope = "session" value = "<div><b>Hello</b></div>"/>
<c:out value="${str}" escapeXml="false"/>

有了这个,我就能达到预期的效果。

2 个答案:

答案 0 :(得分:0)

<c:set var = "str" scope = "session" value = "Hello"/>  
<div><b><c:out value="${str}" /></b></div>

或者只是

<c:set var = "str" scope = "session" value = "<div><b>Hello</b></div>"/>  
${str}

答案 1 :(得分:0)

首先下载/实现该库 Taglibs

然后在* .jsp页面的开头进行简单导入。

  • <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

然后您就可以导入该文件

  • <c:import url="./mypage.jsp" var="cPage" charEncoding="UTF-8"/>

一个绝对链接,也许是一个hostet html文件:

  • <c:import url="www.w3schools.org/index.html" var="cPage" charEncoding="UTF-8"/>

'cPage'是返回的字符串

然后使用var

  • <c:out value="${cPage}" escapeXml="false"/>