`
ihuashao
  • 浏览: 4717895 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

关于 JSTL c:out 对 XML html 自动转义 转义的禁用

阅读更多

在servlet里设置了属性值 request.setAttribute("MENU", menu);

doPost()或者doGet()里做跳转:

代码

getServletConfig().getServletContext().getRequestDispatcher(
mainpage).forward(request, response);

在mainpage页面直接获取可以用 request.getAttribute("MENU");

若用JSTL代码为 <c:out value="${MENU}"></c:out>

MENU里面包含的 html 的特殊字符被自动转义 显示到页面

不想转义,解决方法如下:

-----------------------------------------

<c:out value="expression" default="expression" escapeXml="boolean"/>;


escapeXml 属性也是可选的。

它控制当用 <c:out>; 标记输出诸如“<”、“>;”和“&”之类的字符

(在 HTML 和 XML 中具有特殊意义)时是否应该进行转义。

如果将 escapeXml 设置为 true,则会自动将这些字符转换成相应的 XML 实体(此处提到的字符分别转换成 &、& 和 &)。

--------------------------------------------

对于转义的禁用 :

设置 escapeXml属性为"false" 即可 代码如下:

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

================================================

在应用程序开发中,如果内容过长,想截取一定长度字符,然后补充"....."
jstl1.1引入了一个fn.tld的标签,用于处理字符,如获得字符length,substring,indexof,endWith,lowcase
实现截取字符串
如:
<c:set var="log.logTitle" value="做一个截取字符串长度的测试"
<c:choose>
<c:when test="${fn:length(log.logTitle) > 10}">
<c:out value="${fn:substring(log.logTitle, 0, 10)}......" />
</c:when>
<c:otherwise>
<c:out value="${log.logTitle}" />
</c:otherwise>
</c:choose>

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xiyuan1999/archive/2009/08/06/4419321.aspx

分享到:
评论

相关推荐

    JSTL操作XML JSTL操作XML

    3. **配置`web.xml`**:在项目的部署描述符文件`web.xml`中声明对JSTL的依赖。 4. **编写JSP页面**:在JSP页面中使用JSTL标签。 ##### 3.2 使用JSTL读取XML配置文件 在实验中,我们通过一个简单的示例来展示如何...

    JSTL标准标签库 <C:out>、<c:set>、<c:remove>和<c:catch>标记 <c:if>、<c:choose>、<c:when>和<c:otherwise>标记 <c:forEach>和<c:forTokens>标记

    2. `&lt;c:forTokens&gt;`:对字符串进行分割,然后对每个分割出来的元素进行循环处理。 **使用JSTL的好处**: - 提高代码的可读性:通过使用XML样式的标签,使得JSP页面更像声明式编程,减少脚本的使用。 - 提高可维护性...

    JSTL 入门:表达式语言

    2. **利用核心库执行条件逻辑和循环**:JSTL的核心库提供了一系列标记,如`&lt;c:if&gt;`、`&lt;c:choose&gt;`、`&lt;c:when&gt;`、`&lt;c:otherwise&gt;`等,用于执行条件逻辑;`&lt;c:forEach&gt;`标记则用于循环处理列表、数组等集合。这些标记...

    JSTL XML标签库

    JSTL的XML标签库(c:import, x:parse, x:out, x:transform等)为XML处理提供了强大的工具。这些标签使得开发者可以方便地导入XML文档、解析XML数据、输出XML内容以及执行XSLT转换,无需直接编写Java代码或者使用SAX...

    jstl和el的语法

    1. 功能:`&lt;c:out&gt;`标签主要负责将指定的值输出到页面上,同时提供了自动转义HTML特殊字符的功能,以防止跨站脚本攻击(XSS)。 2. 语法: - 无标签体语法:`&lt;c:out value="value" [escapeXml="{true|false}"] ...

    JSTL语法示例

    (3)&lt;c:out value="&lt 使用字符转义&gt" escapeXml="false"&gt;&lt;/c:out&gt; (4)&lt;c:out value="${null}"&gt;使用了默认值&lt;/c:out&gt; (5)&lt;c:out value="${null}"&gt;&lt;/c:out&gt; &lt;/html&gt; ``` 以上代码展示了`&lt;c:out&gt;`标签...

    JSTL标签库

    - `&lt;c:out&gt;`标签用于显示数据对象的内容,它能够安全地处理特殊字符,例如通过设置`escapeXml`属性来决定是否转义XML特殊字符。 - `&lt;c:set&gt;`用于设置变量的值,`&lt;c:remove&gt;`则用于删除变量。 - 流程控制标签如`&lt;c...

    JSTL示例代码,x,xml,sql,fmt

    `&lt;x:parse&gt;`可以将XML字符串解析为DOM对象,`&lt;x:out&gt;`用于安全地输出XML内容,防止XSS攻击,`&lt;x:transform&gt;`则可以对XML进行XSLT转换。这些标签使得JSP可以直接处理XML,无需额外的XML处理库。 3. **SQL标签库(sql...

    jstl and standard_JSTL_

    - `fn:escapeXml()` 用于转义XML或HTML特殊字符。 - `fn:length()` 返回数组或集合的长度。 - `fn:substring()` 截取字符串的一部分。 使用JSTL的优点包括: - **代码分离**:JSTL使得页面逻辑和显示逻辑分离,...

    jstl核心标签库使用说明

    - **`&lt;c:out&gt;`**:用于输出变量或表达式的值,可选参数`escapeXml`用于决定是否转义HTML特殊字符,默认为`true`。 示例: ```html &lt;c:out value="aaa"/&gt; &lt;c:out value="${city}" default="unknown" /&gt; &lt;c:out ...

    jstl标签库.txt

    `&lt;c:out&gt;`标签用于在JSP页面上输出一个表达式的值,同时提供了默认值处理和XML转义的功能。该标签有以下两种基本用法: - **无体形式**: ```xml &lt;c:out value="value" [escapeXml="{true|false}"] [default=...

    JSTL中if标签使用方法

    &lt;h2&gt;&lt;c:out value="&lt;c:if&gt;测试"/&gt; &lt;c:if test="${param.username=='Admin'}" var="condition" scope="page"&gt; Admin &lt;/c:if&gt; 结果为: ${condition} &lt;/html&gt; ``` 在这个例子中,如果URL参数`username`的值为`...

    JSTL语法及参数详解

    通过JSTL,开发者可以减少对脚本语言的依赖,将逻辑处理与页面展示分离,实现更清晰的MVC架构。本文将详细介绍JSTL中的核心标签及其参数,帮助读者快速掌握JSTL的使用。 #### 一、通用标签库(Core Library) ####...

    JSTL实例讲解大全

    2. `&lt;x:out&gt;`:输出XML内容,自动转义特殊字符。 3. `&lt;x:transform&gt;`:使用XSLT转换XML。 在实际应用中,`JSTL-Login`可能是一个关于使用JSTL进行用户登录验证的示例。这可能涉及到`&lt;c:if&gt;`和`&lt;c:choose&gt;`进行条件...

    IBM jstl讲义课件

    - `&lt;c:out&gt;`:输出变量或表达式的值,可以避免XSS攻击,通过`escapeXml`属性控制是否转义XML特殊字符。 - `&lt;c:set&gt;`:设置变量,如上面示例中的`&lt;c:set var="name" value="张三" /&gt;`。 - `&lt;c:remove&gt;`:删除一个...

    jstl标签使用的总结心得

    它有`value`属性用于指定要显示的值,`escapeXml`属性决定是否转义HTML和XML特殊字符,`default`属性在值为空或null时提供默认值。 示例: ```jsp &lt;c:out value="${sessionScope.anyValue}" default="no value" ...

    jstl标签学习笔记

    通过使用`&lt;c:out&gt;`、`&lt;c:set&gt;`、`&lt;c:remove&gt;` 和 `&lt;c:if&gt;` 等标签,可以方便地处理输出、赋值、删除和条件判断等任务,提高了代码的可读性和可维护性。在实际开发中,JSTL是JSP开发不可或缺的一部分。

    JSTL中文帮助文档

    - `&lt;fn:escapeXml&gt;` 和 `&lt;fn:replace&gt;`:字符串操作函数,如转义 XML 字符和替换子串。 3. **XML 标签库 (XML Tags)** - `&lt;x:parse&gt;`:解析 XML 文档。 - `&lt;x:out&gt;`:输出 XML 数据。 - `&lt;x:transform&gt;`:使用 ...

Global site tag (gtag.js) - Google Analytics