EL表達式與JSTL標簽map遍歷varStatus屬性下標使用


    在JSP頁面開發中,JSTL標簽庫迭代標簽<c:forEach>為我們迭代遍歷數組集合提供了一種選擇。

     遍歷過程中varStatus屬性為我們遍歷集合提升了很大操作空間。

    貼一下具體使用 :    

            需求:有一map集合,生成標准table,三個元素一換行 

<
c:forEach var="entry" items="${map}" begin="0" end="${fn:length(map)}" varStatus="status"> <c:choose> <c:when test="${(status.index)%3==0}"> <tr><td>${entry.key}:${entry.value}</td> </c:when> <c:when test="${fn:length(map) == status.count || (status.index)%3==2}"> <td>${entry.key}:${entry.value}</td></tr> </c:when> <c:otherwise> <td>${entry.key}:${entry.value}</td> </c:otherwise> </c:choose> </c:forEach>

      

        說明:1、items:是集合,用EL表達式;

               2、var:變量名,存放items ,代表集合中每一條數據

               3、varStatus: 顯示循環狀態的變量,通過下面幾個屬性,可以方便使用迭代索引值,進行特殊判斷業務:

                            ①index:從0開始; 顯示當前迭代的索引值

                            ②count:元素位置,從1開始;  顯示當前迭代顯示的行位置。通過配合判斷語句,可實現上面例子中三個一換行的效果

                            ③first:如果是第一個元素則顯示true; 

                            ④last:如果是最后一個元素則顯示true;

               4、begin:循環的初始值(整型);

               5、end: 循環結束 ; 

               6、step:步長,循環間隔的數值;

 

   ${fn:xxx} 為JSTL提供的一套標准函數庫,包含了一些字符串處理的方法。

        在JSP頁面中引入函數聲明,就可以使用了:<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

 


免責聲明!

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



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