我有一个带
的TreeMap<c:if test="${!empty viewObjects}">
<table border="0" cellpadding="0" cellspacing="0">
<c:forEach items="${viewObjects}" var="relations">
<c:forEach items="${relations.value}" var="role" varStatus="status">
<c:set var="subcount" value="${status.count + 1 }"/>
<tr class="color<c:out value="${subcount%2}"/>">
<td>${relations.key}</td>
<td>${role.name}</td>
</tr>
</c:forEach>
</c:forEach>
</table>
</c:if>
如何在嵌套foreach中的每次迭代中只增加+1的子级增加? 根据我的经验,“状态”从第一个foreach迭代开始,所以这也影响子量,我不会得到总迭代。
答案 0 :(得分:4)
你可以像在Java中那样做:通过使用在最外层循环之外初始化的计数器变量:
int counter = 0;
for (...) {
for (...) {
count++;
}
}
所以在JSTL中,它会变成
<c:set var="counter" value="0"/>
<c:forEach ...>
<c:forEach ...>
<c:set var="counter" value="${counter + 1}"/>
</c:forEach>
</c:forEach>