2012-05-11 130 views
0

下面的代碼檢查最後一個項目,但我需要檢查第二個項目,我可以使用計數器來實現這一目標,但是有沒有更好的方法?檢查是否在第二個項目

<c:if test="${status.last}"> 

回答

0

雅各布有正確的想法,但我認爲它更像是這樣。

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> 
<c:forEach var="current" varStatus="status" items="${list}"> 
    <c:if test="${(fn:length(list) - 1) == status.count}" > 
     The next to last item is ${current} 
    </c:if> 
</c:forEach> 

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> 
<c:set var="nextToLast" value="${fn:length(list) - 1}" /> 
<c:forEach var="current" varStatus="status" items="${list}"> 
    <c:if test="${nextToLast == status.count}" > 
     The next to last item is ${current} 
    </c:if> 
</c:forEach> 
1

一種方法:

//looping through a list called "myList" 

<c:if test="${fn:length(myList)==(status.count+1)}"> 

注意,這個代碼將計算在每個迭代上列表的大小;更好的方法是將大小放入一個變量並將其與status.count進行比較。

相關問題