C標籤c:forEach的用法
阿新 • • 發佈:2018-11-02
先介紹一下語法
語法:<c:forEach var="name" items="Collection" varStatus="statusName" begin="begin" end="end" step="step"></c:forEach>
該標籤根據迴圈條件遍歷集合 Collection 中的元素。 var 用於儲存從集合中取出的元素;items 指定要遍歷的集合;varStatus 用於存放集合中元素的資訊
上面這個語法,對於沒有使用過的人來說,基本無效,那麼,翻譯成白話文即
這個標籤的目的就是要遍歷
items : 就是你要遍歷的集合,就是要遍歷的全部內容要放在這個下面
var : 就是這個集合下面的每一個元素,比如一個集合{1,2,3,4,5},那麼var表示的就是1或者2或者3...
begin: 預設從0開始,表示從第幾個開始取元素
end : 和begin對應,表示到第幾個元素終止
step : 步進,預設是1,表示一個一個跳,還是任意數字跳
varStatus: 表示集合中每個元素的相關資訊,有4種狀態:index(所在位置,即索引).count(總共已迭代的次數).first(是否為第一個位置),last(是否為最後一個位置)
那麼生動的例子如下,僅供參考
1 <%@ page contentType="text/html;charset=GBK" %> 2 <%@page import="java.util.List"%> 3 <%@page import="java.util.ArrayList"%> 4 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 5 <html> 6 <head> 7 <title>JSTL: -- forEach標籤例項</title> 8 </head> 9 <body> 10 <h4><c:out value="forEach例項"/></h4> 11 <hr> 12 <% 13 List a=new ArrayList(); 14 a.add("貝貝"); 15 a.add("晶晶"); 16 a.add("歡歡"); 17 a.add("瑩瑩"); 18 a.add("妮妮"); 19 request.setAttribute("a",a); 20 %> 21 <B><c:out value="不指定begin和end的迭代:" /></B><br> 22 <c:forEach var="fuwa" items="${a}"> 23 <c:out value="${fuwa}"/><br> 24 </c:forEach> 25 <B><c:out value="指定begin和end的迭代:" /></B><br> 26 <c:forEach var="fuwa" items="${a}" begin="1" end="3" step="2"> 27 <c:out value="${fuwa}" /><br> 28 </c:forEach> 29 <B><c:out value="輸出整個迭代的資訊:" /></B><br> 30 <c:forEach var="fuwa" items="${a}" begin="3" end="4" step="1" varStatus="s"> 31 <c:out value="${fuwa}" />的四種屬性:<br> 32 所在位置,即索引:<c:out value="${s.index}" /><br> 33 總共已迭代的次數:<c:out value="${s.count}" /><br> 34 是否為第一個位置:<c:out value="${s.first}" /><br> 35 是否為最後一個位置:<c:out value="${s.last}" /><br> 36 </c:forEach> 37 </body> 38 </html>