jsp跳出循环

来源:互联网 发布:linux重命名命令 编辑:程序博客网 时间:2024/06/06 02:38

JSP 中使用 JSTL 遍历循环时,当已满足条件时,不想再往下走后面的循环,这时如何跳出该循环呢?

本节将介绍该解决方案。

可以利用一个变量通过给它赋不同的值来判断是否继续循环

以下转自:http://blog.csdn.net/clare504/article/details/38921957

[html] view plain copy
  1. <%  
  2. List l = new ArrayList();  
  3. l.add(new Long(1));  
  4. l.add(new Long(4));  
  5. l.add(new Long(5));  
  6. l.add(new Long(3));  
  7. l.add(new Long(2));  
  8. l.add(new Long(6));  
  9. session.setAttribute("list",l);  
  10. %>  
  11.   
  12. <c:set var="flag" value="true" />  
  13. <c:forEach items="${sessionScope.list}" var="i" varStatus="loopstatus">  
  14.         <c:if test="${flag }">  
  15.                ${i }<br/>  
  16.        </c:if>  
  17.        <c:if test="${i eq 3}">  
  18.               <c:set var="flag" value="false"/>  
  19.        </c:if>  
  20. </c:forEach>  
  21.   
  22.   
  23. 这样,当<c:if>的条件成立的时候就可以退出<c:forEach>标签的循环了。  

还可以利用这种方式,设置一个变量来作为走forEach循环的条件:

[html] view plain copy
  1. <c:forEach var="_r" items="${UPDATEUSERROLEUSERLISTROLE}" end="exitId">  
  2.  <c:if test="${(_r['lasRoleWeightname'] eq _ur['lasRoleWeightname'])}">  
  3.  <c:set var="exitId" value="0"></c:set>  
  4.  </c:if>  
  5. </c:forEach>