对于jstl中的foreach进行一个总结
<c:foreach>就是相当于于for和foreach循环,服务器最终也会帮他转换成Java中的这类循环代码,它的主要用法也就这么几种:
1、循环遍历,输出所有的元素。 其中items 用于接收集合对象,var 定义对象接收从集合里遍历出的每一个元素。同时其会自动转型。
<c:foreach items="${list}" var="li">
${li}
</c:foreach>
2、循环遍历,输出一个范围类的元素。 其中begin 定义遍历的开始位置,end定义遍历的结束位置。
<c:foreach items ="${lis}" var = "li " begin="2" end ="12">
${li}
</c:foreach>
3、循环遍历,输出除某个元素以外的元素或输出指定元素。
<c:foreach items="${list}" var ="li" varStatus="status">
<c:if text="${status.count==1}>
${"第一个元素不要"}
</c:if>
${li}
</ c:foreach>
其中varStatus属性可以有以下属性值:
current当前这次迭代的(集合中的)项
index当前这次迭代从 0 开始的迭代索引
count当前这次迭代从 1 开始的迭代计数
first用来表明当前这轮迭代是否为第一次迭代的标志
last用来表明当前这轮迭代是否为最后一次迭代的标志
begin属性值
end属性值
step属性值
eg:
<c:foreach items="list" var ="li" step="2">
${li}
</c:foreach>
注意:step为循环的步长。每次隔两个单位输出一个。如:1、3、5、==
下面一个实例,代码是从网上拷来的
<c:forEach items="${command.modelList}" var="model" varStatus="abc">
<tr>
<td><c:out value="${abc.count}"/></td>
<td class="model">
<form:checkbox path="select" value="${abc.index}"/>
<label for="model1">${model.modelName}</label>
<p>${model.modelDesc}</p>
</td>
<td>
<form:select path = "modelList[${abc.index}].positionIdx" onchange="selectPoss(this);">
<option value="">请选择</option>
<form:option value="A" label="位置A"/>
<form:option value="B" label="位置B"/>
<form:option value="C" label="位置C"/>
<form:option value="D" label="位置D"/>
<form:option value="E" label="位置E"/>
<form:option value="F" label="位置F"/>
</form:select>
</td>
<td>
<a href="#" onclick="getModelDetail(${model.modelID});"><img src="<%=request.getContextPath()%>/images/edit.gif" alt="编辑"/></a>
<a href="#" onclick="deleteModel(${model.modelID});"><img src="<%=request.getContextPath()%>/images/delete.gif" alt="删除" /></a>
</td>
</tr>
</c:forEach>
分享到:
相关推荐
本文将深入探讨`c:forEach`标签的使用方法和其在实际开发中的应用场景。 ### `c:forEach`标签的基本结构 `c:forEach`标签通常用于遍历集合或数组,其基本语法如下: ```jsp <c:forEach items="yourCollection" ...
### c:foreach 的各种用法详解 在JSP(JavaServer Pages)开发中,`<c:forEach>` 是一个非常重要的标签,它属于JSTL(Java...掌握 `<c:forEach>` 的使用方法对于提高 JSP 页面的开发效率和代码可读性都有着重要作用。
在JSP页面中,使用`c:forEach`标签遍历`map`: ```jsp <c:forEach items="${map}" var="entry"> <option value="${entry.key}">${entry.value}</option> </c:forEach> ``` 这里,`${map}`代表从前端传过来的`Map`...
首先,我们需要理解JSTL的核心标签库`<c:forEach>`和`<c:if>`,它们将在动态合并单元格的过程中起到关键作用。`<c:forEach>`用于遍历集合,而`<c:if>`用于执行条件判断。 第一种方法是基于列的合并。假设我们有一个...
C标签库提供了一些类似于Java编程中的控制结构,例如`<c:if>`, `<c:forEach>`, `<c:choose>`, `<c:set>`等,这些标签能够帮助开发者更方便地在JSP页面上进行逻辑处理,而无需过多地编写脚本let或Java表达式。...
- 动态Include使用`<jsp:include>`的page属性,每次请求都会检查包含文件的最新内容,适合包含动态生成的内容。 7. **HTTP请求转发与重定向**: - `RequestDispatcher.forward()`用于请求转发,客户端浏览器地址...
- **带条件的遍历**:`<c:forEach items="${arry1}" var="n" begin="3" end="5" step="2">`。其中`begin`、`end`和`step`分别表示开始位置、结束位置和步长。 #### `c:if` 标签 用于条件判断,仅当条件为真时才会...
stl的配置方法:<br>1、将jstl.jar和standard.jar拷贝到web-inf/lib下即可(如只使用EL表达式,无需引用这两个包)<br><br>2、在jsp页面头部引入taglib方法如下:<br> <%@ taglib prefix="c" uri=...
例如,`<c:forEach items="集合或数组" var="当前项" begin="起始索引" end="结束索引">标签体</c:forEach>` - `c:choose`、`c:when`和`c:otherwise`:构成类似Java中的switch-case结构。例如, ``` <c:choose> ...
本文件主要涉及了JSTL中的一些核心标签,如`<c:if>`、`<c:choose>`、`<c:when>`、`<c:otherwise>`和`<c:forEach>`等,并展示了它们在实际应用中的用法。 1. **条件判断标签**: - `<c:if>`:用于进行条件判断,`...
<c:forEach items="${options}" var="option"> <input type="radio" name="choice" value="${option.value}">${option.label} </c:forEach> ``` 这段代码会遍历一个名为`options`的列表,为每个选项生成一个`radio...
首先,`C标签`是指Tomcat的JSTL(JavaServer Pages Standard Tag Library)的一部分,它提供了类似于Java控制结构的标签,如`<c:if>`, `<c:forEach>`, `<c:choose>`等。这些标签使得开发者可以使用更加简洁的XML语法...
`<c:param>` 通常与`<c:url>`或`<jsp:include>`一起使用,添加URL查询参数。如: ``` <c:param name="id" value="${productId}"/> ``` 以上就是JSTL中常用的一些标签及其用法,它们极大地简化了JSP页面的编程,...
除了这些,JSTL还提供了其他标签,如`<c:set>`用于设置变量,`<c:if>`和`<c:choose>`进行条件判断,`<c:forEach>`进行循环遍历,等等。使用JSTL可以使JSP代码更加整洁,更易于理解和维护,是现代JSP开发中的重要工具...
本篇文章将深入探讨JSP核心标签的使用方法,并介绍一些常用的函数用法。 一、JSP核心标签库介绍 JSP核心标签库(CTL)是JSP 2.0引入的标准标签库,它包含了用于简化页面逻辑和输出内容的标签。这些标签遵循JSTL ...
`<c:forTokens>`标签类似于`<c:forEach>`,但它是专门用于遍历由分隔符分隔的字符串中的令牌。 **示例:** ```xml <c:forTokens items="a,a,a,a,a" delims="," var="x" begin="0" end="10" step="2" varStatus=...
<c:forEach items="${sessionScope.SelectDeviceIdsList}" var="map"> <c:if test="${map.key eq device[0]}"> <c:set var="iscontain" value="true" /> </c:if> </c:forEach> <c:if test="${iscontain}"> <!-- ...
JSP标签库(JSTL)是标准标签库的扩展,提供了更多的标签,如<c:forEach>用于循环,<c:if>用于条件判断等。这些标签进一步简化了JSP页面中的逻辑处理。 - **示例**: ```jsp <%@ taglib prefix="c" uri=...
以上内容总结了JSTL中几个核心标签的使用方法,包括`out`、`set`、`remove`、`url`、`if`、`choose`以及`forEach`标签的详细介绍和示例。通过这些标签,可以显著提高JSP页面的开发效率和代码的可读性。此外,了解...
8. `<c:param>`:这个标签用于向请求中添加参数,通常与`<c:url>`或`<c:redirect>`配合使用,以便在URL中传递参数。 使用JSTL的`c`标签库,可以有效地减少JSP页面中的脚本let和scriptlet,提高代码的可读性和维护性...