`
八岭书生
  • 浏览: 104697 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

<c:out>标签中的escapeXml属性

 
阅读更多

最近在做一个在线文本编辑器项目,遇到一个问题:
我从后台得到了各个章节的信息,包括标题和内容,其中内容是以HTML格式的形式存储的.这些章节信息是以一个List返回的.在页面中的显示代码如下:

 

<c:forEach items="${pageControl.data}" var="newsSearch">
				<div style="margin-top: 20px;">
					<span>
						<a href="newsShow.do?detail=1&id=<c:out value="${newsSearch.id}" />" ><c:out value="${newsSearch.title}" escapeXml="false" /></a><br />
						<c:out value="${newsSearch.content}" /><br/>
						<font color="green">http://127.0.0.1:8080/LuceneSys/newsShow.do?detail=1&id=<c:out value="${newsSearch.id}" />&nbsp;<c:out value="${newsSearch.publishDate}" /></font>
					</span>
					<br />
				</div>
			</c:forEach>

 这段代码是将List中的章节信息拼接成一篇文章.但是问题出来了,由于content中的内容是以HTML形式存储的,所以在页面显示的时候,会将一些HTML标签原封不动的显示出来.查看页面的源代码,发现这些标签已经被解析成了转义符.
为了解决这个问题,在<c:out>标签中有一个escapeXml属性,其默认值为true,即默认是要将HTML标签转化为转义字符,所以在页面中就显示出了HTML标签.
所以,很显然,只要将这个属性值改为flase就可以了.代码如下:

 

<c:forEach items="${pageControl.data}" var="newsSearch">
				<div style="margin-top: 20px;">
					<span>
						<a href="newsShow.do?detail=1&id=<c:out value="${newsSearch.id}" />" ><c:out value="${newsSearch.title}" escapeXml="false" /></a><br />
						<c:out escapeXml="false" value="${newsSearch.content}" /><br/>
						<font color="green">http://127.0.0.1:8080/LuceneSys/newsShow.do?detail=1&id=<c:out value="${newsSearch.id}" />&nbsp;<c:out value="${newsSearch.publishDate}" /></font>
					</span>
					<br />
				</div>
			</c:forEach>

 

分享到:
评论

相关推荐

    jstl标签库

    - **流程控制标签**:`&lt;c:if&gt;`、`&lt;c:choose&gt;`、`&lt;c:when&gt;`、`&lt;c:otherwise&gt;`,用于条件判断和多分支选择。 - **迭代标签**:`&lt;c:forEach&gt;`、`&lt;c:forTokens&gt;`,实现循环遍历。 - **URL操作标签**:`&lt;c:import&gt;`、`...

    c标签 c标签 c标签 c标签

    `&lt;c:out&gt;`有两个主要属性:`value`(必需,表示要显示的值)和`escapeXml`(可选,决定是否对特殊字符进行转义,默认为`true`)。 2. **XML processing库**:提供了处理XML文档的功能,通过`&lt;x:parse&gt;`、`&lt;x:...

    JSTL核心标签库的一些应用

    - `&lt;c:out&gt;`:此标签用于输出数据,相当于JSP中的`&lt;%= %&gt;`. 它的优点在于鼓励将业务逻辑与展示逻辑分离,提升代码可读性。`&lt;c:out&gt;`标签有`value`属性,用于指定要输出的值,可选的`escapeXml`属性用于控制是否进行...

    jstl和el的语法

    - 输出Web域中的属性:`&lt;c:out value="${test_session}" /&gt;` 6. `&lt;c:out&gt;`的`escapeXml`属性应用: - 例程8-4中,`&lt;c:out&gt;`没有设置`escapeXml`,导致HTML标签`&lt;meta&gt;`被直接输出,可能引发安全问题。 - 例程8-5...

    JSTL标签库

    主要包括`&lt;c:out&gt;`、`&lt;c:set&gt;`、`&lt;c:remove&gt;`、`&lt;c:catch&gt;`、`&lt;c:if&gt;`、`&lt;c:choose&gt;`、`&lt;c:when&gt;`、`&lt;c:otherwise&gt;`、`&lt;c:forEach&gt;`、`&lt;c:forTokens&gt;`、`&lt;c:import&gt;`、`&lt;c:url&gt;`和`&lt;c:redirect&gt;`等标签。这些标签...

    很齐全的JSTL标签总汇

    - 将主体内容存储到对象属性:`&lt;c:set target="target" property="propertyName"&gt;主体内容&lt;/c:set&gt;` - **属性解释**: - `value`:存储的值。 - `var`:存储的变量名。 - `scope`:变量的范围,默认为page。 -...

    Core标签库部分标签

    `&lt;c:out&gt;` 标签用于在JSP页面中输出一个表达式的值。它有以下几个关键属性: - `value`:指定要输出的表达式,通常为EL表达式。 - `default`:如果`value`属性的表达式计算结果为null或空,将输出此属性指定的默认值...

    JSTL标签-讲解及实例

    - **`&lt;c:out&gt;`标签**:用于在JSP页面中输出数据。 - 属性: - `value`:必填项,表示要输出的数据,可以是常量或EL表达式。 - `default`:非必填,当`value`属性的值为`null`时输出的默认信息。 - `escapeXml`:...

    jsp开发技术之jstl标签

    5. `&lt;c:out&gt;`标签: 这个标签用于安全地输出值,可以防止XSS(跨站脚本攻击)。`value`属性指定要输出的对象,`escapeXml`决定是否转义XML特殊字符,默认为`true`。如果输出值为`null`,可以通过`default`属性设置...

    JavaWeb开发技术-Core标签库.pptx

    &lt;c:out value="value" [escapeXml="{true|false}"]&gt;defaultValue&lt;/c:out&gt; ``` - `value`属性:指定要输出的内容。 - `default`属性:当`value`为`null`时,输出的默认值。 - `escapeXml`属性:控制是否进行HTML...

    JSTL core c 标签 使用全集

    这里`&lt;c:catch&gt;`标签中的`var`属性指定了一个变量名称,用于保存捕获到的异常信息。如果`&lt;c:catch&gt;`内部的代码抛出了异常,则该异常会被捕获,并存储到指定的变量中。 ##### 2. `&lt;c:choose&gt;` 标签 `&lt;c:choose&gt;`...

    JSTL_标签库详解大全JSTL常用标签汇总java开发jsp开发.pdf

    - 无本体内容时,`&lt;c:out value="value" [escapeXml="{true|false}"] [default="defaultValue"] /&gt;`,`value`属性指定要显示的值,`default`属性用于设置当`value`为空时显示的默认值,`escapeXml`属性控制是否转义...

    JSTL_标签库详解大全JSTL常用标签汇总java开发jsp开发归类.pdf

    - 有本体内容:`&lt;c:out value="value" [escapeXml="{true|false}"]&gt; default value &lt;/c:out&gt;` - 属性: - `value`:要显示的值。 - `default`:如果`value`为`null`时显示的默认值。 - `escapeXml`:是否转义XML...

    JSTL In Action部分笔记

    - `&lt;c:choose&gt;`中只能包含`&lt;c:when&gt;`和`&lt;c:otherwise&gt;`标签。 - 每个`&lt;c:choose&gt;`中至少应有一个`&lt;c:when&gt;`,但`&lt;c:otherwise&gt;`是可选的。 - 所有`&lt;c:when&gt;`标签的条件是互斥的,只有一个会被执行。 - 如果所有`&lt;c:...

    jstl标签库.txt

    `&lt;c:catch&gt;`标签用于捕获执行过程中的异常,并将其存储在一个变量中供后续处理。其结构如下: ```xml &lt;c:catch [var="varName"]&gt; 可能抛出异常的代码块 &lt;/c:catch&gt; ``` `var`属性指定了用于存储异常信息的变量名,...

    jstl标签库1

    c:out标签的value属性值为null &lt;/c:out&gt; ``` 当`value`属性值为null时,标签内部的默认文本将被输出。 3. **设置`escapeXml`属性值为true** ```jsp &lt;c:out value="${requestNulltest}" escapeXml="true"&gt; &...

    JSTL表达式

    &lt;c:out value="${user.name}" default="Guest" escapeXml="true" /&gt; ``` ##### 2. &lt;c:set&gt; - **功能**:设置变量值或JavaBean对象的属性。 - **属性**: - `value`:要设置的值。 - `var`:变量名。 - `scope`...

    C标签的使用

    `&lt;c:out&gt;`和`&lt;c:set&gt;`是JSTL中非常实用的两个标签,它们帮助开发者更方便地处理数据输出和变量设置,提升了代码的可读性和安全性。在编写JSP页面时,使用这两个标签可以极大地简化代码,使JSP更加符合MVC模式,减少...

    jstl核心标签库使用说明

    ArrayList&lt;String&gt; users = new ArrayList&lt;&gt;(); users.add("user1"); users.add("user2"); pageContext.setAttribute("users", users); &lt;c:forEach items="${users}" var="user"&gt; ${user} &lt;/c:forEach&gt; ``` ...

Global site tag (gtag.js) - Google Analytics