c:forEach的varStatus屬性
index當(dāng)前這次迭代從 0 開始的迭代索引
count當(dāng)前這次迭代從 1 開始的迭代計(jì)數(shù)
first用來表明當(dāng)前這輪迭代是否為第一次迭代的標(biāo)志
last用來表明當(dāng)前這輪迭代是否為最后一次迭代的標(biāo)志
begin屬性值
end屬性值
step屬性值
例:
表格偶數(shù)行與奇數(shù)行顏色交替效果
引標(biāo)簽庫(kù)
<%@ taglib prefix="c" uri="<%@ taglib prefix="fn" uri="<c:forEach items="${queryPromotionList}" var="vPromotion" varStatus="vstatus">
<c:choose>
<c:when test="${vstatus.index%2==0}">
<tr bgcolor="#FFFFFF" height="40">
</c:when>
<c:otherwise>
<tr bgcolor="#F3F3F5" height="40">
</c:otherwise>
</c:choose>
<table class=table_body_bg cellspacing=1 cellpadding=1
width="100%" align=center border=0>
<c:forEach items="${list}" var="a" varStatus="vs">
<c:if test="${vs.count%5==1}">
<tr align="left" height="20">
</c:if>
<td class=table_body_td width="20%"><a href="/aam/degree/advisorAnswer.do?sfid=${a.sfid }">${a.xm }(${a.sfid })</a></td>
<c:set var="count" value="${vs.count}"/> //${vs.count}只在<c:forEach></c:forEach>的范圍內(nèi)有值 外部引用需要把值傳出去
</c:forEach>
<c:if test="${count%5==1}">
<td class="table_body_td" width="20%"></td>
<td class="table_body_td" width="20%"></td>
<td class="table_body_td" width="20%"></td>
<td class="table_body_td" width="20%"></td>
</tr>
</c:if>
<c:if test="${count%5==2}">
<td class="table_body_td" width="20%"></td>
<td class="table_body_td" width="20%"></td>
<td class="table_body_td" width="20%"></td>
</tr>
</c:if>
<c:if test="${count%5==3}">
<td class="table_body_td" width="20%"></td>
<td class="table_body_td" width="20%"></td>
</tr>
</c:if>
<c:if test="${count%5==4}">
<td class="table_body_td" width="20%"></td>
</tr>
</c:if>
<c:if test="${count%5==0}">
</tr>
</c:if>
</table>
不論是對(duì)整數(shù)還是對(duì)集合進(jìn)行迭代, <c:forEach>
剩余的屬性 varStatus
所起的作用相同。和 var
屬性一樣, varStatus
用于創(chuàng)建限定了作用域的變量。不過,由 varStatus
屬性命名的變量并不存儲(chǔ)當(dāng)前索引值或當(dāng)前元素,而是賦予 javax.servlet.jsp.jstl.core.LoopTagStatus
類的實(shí)例。該類定義了一組特性,它們描述了迭代的當(dāng)前狀態(tài),下面列出了這些特性:
特性 | Getter | 描述 |
current | getCurrent() |
當(dāng)前這次迭代的(集合中的)項(xiàng) |
index | getIndex() |
當(dāng)前這次迭代從 0 開始的迭代索引 |
count | getCount() |
當(dāng)前這次迭代從 1 開始的迭代計(jì)數(shù) |
first | isFirst() |
用來表明當(dāng)前這輪迭代是否為第一次迭代的標(biāo)志 |
last | isLast() |
用來表明當(dāng)前這輪迭代是否為最后一次迭代的標(biāo)志 |
begin | getBegin() |
begin 屬性值 |
end | getEnd() |
end 屬性值 |
step | getStep() |
step 屬性值 |
posted on 2012-06-08 23:57 何云隆 閱讀(31530) 評(píng)論(2) 編輯 收藏 所屬分類: JSTL