<c:forEach>跳出循环,可以通过设置变量来实现:
<c:forEach>跳出循环,用<c:set>设置一个变量isDoing,可分为跳出本次循环、跳出所有循环。
跳出本次循环:
当循环执行到指定代码后,用isDoing变量忽略执行后续相应代码。每次循环遍历到最后一条时,重新初始化变量isDoing 。
<c:set var="isDoing" value="0"/>
<c:forEach items=".." var=".." varStatus="i">
<c:if test="..">
A:执行到此处后要跳出本次循环;设置一个变量
<c:set var="isDoing" value="1"/>
</c:if>
<c:if test="${isDoing!=1}">
B:若执行A则跳过B结束本次循环
</c:if>
<c:if test="${i.last}">
<c:set var="isDoing" value="0"/>
</c:if>
</c:forEach>
跳出所有循环:
当循环执行到指定代码后,用isDoing变量忽略执行后续相应代码。
<c:set var="isDoing" value="0"/>
<c:forEach items=".." var=".." varStatus="i">
<c:if test="..">
A:执行到此处后要跳出所有循环;设置一个变量
<c:set var="isDoing" value="1"/>
</c:if>
<c:if test="${isDoing!=1}">
B:若执行A则跳过B结束所有循环
</c:if>
</c:forEach>
如果每循环一次都要有输出,在遍历到最后一条时,重新初始化变量isDoing [跳出本次循环];否则,循环到条件时,后面的遍历等同不执行 [跳出所有循环]