jstl 介紹


varStatus是<c:forEach>jstl循環標簽的一個屬性,varStatus屬性。就拿varStatus=“status”來說,事實上定義了一個status名的對象作為varStatus的綁定值。該綁定值也就是status封裝了當前遍歷的狀態,比如,可以從該對象上查看是遍歷到了第幾個元素:${status.count}

我們常會用c標簽來遍歷需要的數據,為了方便使用,varStatus屬性可以方便我們實現一些與行數相關的功能,如:奇數行、偶數行差異;最后一行特殊處理等等。先就varStatus屬性常用參數總結下: 

${status.index}      輸出行號,從0開始。${status.count}      輸出行號,從1開始。${status.current}   當前這次迭代的(集合中的)項${status.first}  判斷當前項是否為集合中的第一項,返回值為true或false${status.last}   判斷當前項是否為集合中的最后一項,返回值為true或falsebegin、end、step分別表示:起始序號,結束序號,跳躍步伐。
如:<c:forEach begin='1' end='5' step='2' items='${list}' var='item'>表示:操作list集合匯中1~5條數據,不是逐條循環,而是按每2個取值。即操作集合中的第1、3、5條數據。
下面是我從網上找的圖,覺得挺好,收藏了:

c:forTokens items="12,34,56,78.89" delims="," var="dailyPrice">
    <tr>
     <td><c:out value="${dailyPrice}" /></td></tr>//以,號作為字符串分隔!變量名 delims屬性可以隨便加,可以有一個多或多個 作為分隔符

我們最常用的就是count和index,用來搞斑馬線表格
常見的用法的是<c:forEach var="varity" items="${sessionScope.myList}" varStatus="status">
                                 <!--實現斑馬線效果--> 
                                 <c:if test="${status.count%2==0}" >
                                       <tr bgcolor="lightyellow">
                                  </c:if>
                                  <c:if test="${status.count%2!=0}" >
                                       <tr>
                                  </c:if>
                                       <td>Elements</td>
                                 </tr> 
                        </c:forEach>


<c:forEach var="varity" items="${sessionScope.myList}" varStatus="status">
         ${status.first}/${status.last}
               當前:${status.current}
 </c:forEach>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM