`

为什么使用<C:foreach>标签不能循环出List里的内容?

阅读更多

 

 为什么使用<C:foreach>标签不能循环出List里的内容?

 

使用JSP调试的时候后台明明List有数据,但是一使用<c:foreach>标签就是显示不出数据,显示空白 。

首先要弄清楚这个标签的用法:

 
c:forEach用法
<c:foreach>类似于for和foreach循环 以下是我目前见过的用法:
1、循环遍历,输出所有的元素。
<c:foreach items="${list}" var="li">
${li}
</c:foreach>
注意:items 用于接收集合对象,var 定义对象接收从集合里遍历出的每一个元素。同时其会自动转型。
2、循环遍历,输出一个范围类的元素。
<c:foreach items ="${lis}" var = "li " begin="3" end ="13">
${li}
</c:foreach>
注意:begin 定义遍历的开始位置,end定义遍历的结束位置。begin 和end的引号必须写。
3、循环遍历,输出除某个元素以外的元素或输出指定元素。
<c:foreach items="${list}" var ="li" varStatus="status">
<c:if text="${status.count==1}>
${"第一个元素不要"}
</c:if>
${li}
</ c:foreach>
注意:varStatus 表示当前集合的状态,count为循环一个计算器。
4、循环遍历,输出第一个或最后一个元素。
<c:foreach items="${list}" var ="li" varStatus="status">
<c:if text="${status.first}">我是第一个元素</c:if>
<c:if text="${status.last}">我是最后一个元素</c:if>
</c:foreach>
注意:first表示如果是一个元素,则返回ture,反之则返回false
last 表示如果是最后一个元素,则返回ture,反之则返回false。
5、循环遍历,按指定步长输出。
<c:foreach items="list" var ="li" step="2">
${li}
</c:foreach>

 

二、其次,这个标签里的LIST集合是放在request里的,也就是说他会去读放在类似Request,Session中的集合。所以,当你的C:foreach标签循环不出数据时,在确保List中已经取到数据时,不妨在JSP页面对象中加入 request.setAttribute("XXX",xxx);

 

分享到:
评论

相关推荐

    c:forEach标签的使用祥解

    在JavaServer Pages (JSP) 开发中,`c:forEach`标签是Java Expression Language (EL) 和 JavaServer Pages Standard Tag Library (JSTL) 的一部分,它提供了一个方便的方式来迭代数组、集合、Map或其他可迭代的数据...

    c:foreach的各种用法

    在JSP(JavaServer Pages)开发中,`&lt;c:forEach&gt;` 是一个非常重要的标签,它属于JSTL(JavaServer Pages Standard Tag Library)的一部分,主要用于循环处理集合、数组等数据结构。相较于传统的JSP Scriptlets,使用...

    c标签遍历集合嵌套的List集合

    在JSP页面中,使用`c:forEach`标签遍历`map`: ```jsp &lt;c:forEach items="${map}" var="entry"&gt; &lt;option value="${entry.key}"&gt;${entry.value}&lt;/option&gt; &lt;/c:forEach&gt; ``` 这里,`${map}`代表从前端传过来的`Map`...

    JSTL标签使用总结

    本文将详细介绍JSTL中的核心标签:&lt;c:if&gt;、&lt;c:choose&gt;、&lt;c:forEach&gt;、&lt;c:forTokens&gt;、&lt;c:catch&gt;、&lt;c:remove&gt;、&lt;c:set&gt;、&lt;c:import&gt;、&lt;c:redirect&gt;、&lt;c:url&gt;以及与之相关的&lt;fmt&gt;标签库。 #### 1. &lt;c:if&gt; &lt;c:if&gt;标签...

    JSTL标签 参考手册

    3. **循环标签**:包括`&lt;c:forEach&gt;` 和 `&lt;c:forTokens&gt;`。这些标签用于循环处理数据集。 - `&lt;c:forEach&gt;`:遍历集合或数组。 - `&lt;c:forTokens&gt;`:基于分隔符分割字符串并迭代。 4. **URL操作标签**:包括`&lt;c:...

    jstl c标签jar包

    C标签库是JSTL的一部分,它包含了类似于Java语言的循环和条件语句的标签,如`&lt;c:forEach&gt;`、`&lt;c:if&gt;`、`&lt;c:choose&gt;`等。这些标签使得JSP开发者能够更清晰地组织代码,而不是直接在页面上写Java脚本。例如,`&lt;c:...

    struts_jstl

    &lt;c:when test="${empty valuelist}"&gt;&lt;br&gt; valuelist为空&lt;br&gt; &lt;/c:when&gt;&lt;br&gt; &lt;c:otherwise&gt;&lt;br&gt; valuelist不为空&lt;br&gt; &lt;/c:otherwise&gt;&lt;br&gt; &lt;/c:choose&gt;&lt;br&gt; &lt;p&gt;&lt;br&gt; &lt;li&gt;循环控制标签:c:foreach&lt;/li&gt;&lt;br&gt;&lt;br&gt; &lt;table ...

    Core标签库部分标签

    `&lt;c:forEach&gt;` 标签用于循环遍历数组或集合。关键属性包括: - `items`:要遍历的集合或数组。 - `begin`:开始位置,默认为0。 - `end`:结束位置。 - `step`:步进值,默认为1。 - `var`:当前项的变量名。 示例...

    taglibs jar包.zip

    使用`&lt;c:forEach&gt;`标签的示例代码如下: ```jsp &lt;%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %&gt; ... &lt;c:forEach var="item" items="${yourCollection}"&gt; &lt;p&gt;当前元素:${item}&lt;/p&gt; &lt;/c:...

    jstl标签使用文档,jstl标签使用帮助文档

    **JSTL(JavaServer Pages Standard Tag Library)** 是一个标准的标签库,它为Java Servlet和JavaServer Pages (JSP) 提供了强大的处理能力,使得开发者可以通过使用标签而不是脚本来实现页面逻辑,从而提高了代码...

    JSTL 标签库 jsp C 标签库

    在这个例子中,`${list}`是存储在请求作用域的List对象,`&lt;c:forEach&gt;`标签将遍历这个List并打印出每个元素。 总之,JSTL和C标签库为JSP开发提供了强大的工具,使得页面更简洁、可读性更强,同时也提升了开发效率和...

    Struts标签的简单应用

    例如,通过&lt;s:form&gt;标签创建一个表单,其中包含&lt;s:textfield&gt;和&lt;s:submit&gt;,同时用&lt;c:forEach&gt;遍历列表并显示数据,还可以利用&lt;c:if&gt;进行条件判断,以控制某些内容的显示与否。 在文件名为"friend2"的压缩包中,...

    jstl标签库3

    接下来,创建一个 JSP 页面,使用 `&lt;c:forEach&gt;` 标签来遍历 `TestBean` 的实例列表: ```jsp &lt;%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %&gt; &lt;%@ page contentType="text/html;charset=UTF-8" %&gt; ...

    Jstl编程实例源代码

    - `&lt;c:forEach&gt;`:循环遍历数组或集合,如`&lt;c:forEach items="${list}" var="item"&gt;${item}&lt;/c:forEach&gt;`。 - `&lt;c:url&gt;`和`&lt;c:param&gt;`:创建URL并添加参数,如`&lt;c:url value="/search" var="searchUrl"&gt;&lt;c:param ...

    c标签 sql标签 格式化标签fmt的使用

    根据提供的文件信息,本文将详细解释如何使用JSTL(JavaServer Pages Standard Tag Library)中的`c`标签、`sql`标签以及`fmt`格式化标签。这些标签为Web开发人员提供了强大的工具来处理数据流控制、数据操作及格式...

    JavaWeb程序设计入门课件JSTL中的Core标签库共

    &lt;c:forEach items="${list}" var="item"&gt; ${item} &lt;/c:forEach&gt; ``` 5. `&lt;c:redirect&gt;` 和 `&lt;c:url&gt;`:处理URL相关的操作。`&lt;c:redirect url="新页面地址"/&gt;` 可以重定向到指定的页面,`&lt;c:url value="原始URL...

    EL表达式及JSTL标准标签

    以上代码展示了如何使用JSTL中的`&lt;c:out&gt;`, `&lt;c:if&gt;`, 和`&lt;c:forEach&gt;`标签进行数据输出、条件判断和循环处理。 ### 结论 EL表达式和JSTL标准标签库是JSP开发者不可或缺的工具,它们不仅简化了JSP页面的开发过程,...

    JSTL标签的使用实例(Java)

    假设我们有一个用户列表,存储在名为`users`的List对象中,可以使用JSTL的`&lt;c:forEach&gt;`标签来遍历并显示每个用户的信息: ```jsp &lt;table&gt; &lt;c:forEach items="${users}" var="user"&gt; &lt;tr&gt; &lt;td&gt;&lt;c:out value="$...

    自己总结的C标签 可以做为标签字典使用

    `&lt;c:forEach&gt;`是JSTL中最常用的标签之一,用于遍历集合或数组。在这段代码中,`&lt;c:forEach&gt;`被用来遍历一个ArrayList、一个HashMap和一个Bean的列表。 #### ArrayList遍历示例: ```jsp &lt;c:forEach var="li" items...

    学习JSTL标签参考手册.pdf

    - `&lt;c:forEach&gt;` 用于遍历集合(如List、Set、Map等)或执行固定次数的循环。它有多个属性,包括: - `var`:定义循环变量名。 - `items`:要遍历的集合或数组。 - `varStatus`:提供额外的循环状态信息,如`...

Global site tag (gtag.js) - Google Analytics