先简单说一下c:forEach的用法,首先你要引用核心标签库。语法如下:
<%@ taglib prefix="c"
uri="http://java.sun.com/jsp/jstl/core" %>
jar包没有的我会在文章末尾给链接。
forEach标签封装了Java中的for,while,do-while循环。forEach标签是更加通用的标签,因为它迭代一个集合中的对象。
他的参数有:
<c:forEach
items="<object>"// 要被循环的信息
begin="<int>"//开始的元素(0=第一个元素,1=第二个元素)
end="<int>"//开始的元素(0=第一个元素,1=第二个元素)
step="<int>"//每一次迭代的步长
var="<string>"//代表当前条目的变量名称
varStatus="<string>">// 代表循环状态的变量名称,这个东西很好用
...
以上就是用法,多说一句这个标签是真的好用,比如varStatus的属性有:
current当前这次迭代的(集合中的)项
index当前这次迭代从 0 开始的迭代索引
count当前这次迭代从 1 开始的迭代计数
first用来表明当前这轮迭代是否为第一次迭代的标志
last用来表明当前这轮迭代是否为最后一次迭代的标志
用起来感觉很爽的,哈哈。
接下来是实现单双行的一个变色的例子
<c:forEach items="${beanPage.list}" var="h" varStatus="status">
<tr <c:if test="${status.index%2==0}">bgcolor="red"</c:if>>
<!-- 就是上面这具实现变色的,后面是我的代码,不用管,通过varStatus.index来的得从 0 开始的迭代索引判断单双,在通过if来控制背景色-->
<td align="left">${h.id} </td>
<td align="left">${h.username}</td>
<td align="left">${h.age} </td>
<td align="left">${h.address}</td>
<td align="left">${h.email}</td>
</tr>
</c:forEach>
ok ,就是这样了,链接http://download.youkuaiyun.com/detail/cjs520131499/9893173