将for循环转换为JSTL / EL表达式

时间:2014-04-11 10:03:58

标签: java jsp jstl el

我有这个循环

    for(int i = 1 + offset; i <= pageSetPerBatch + offset && (i - 1) * resultPerPage < records; i++) {
        if(currentPage == i) {
            System.out.println(i + "(Current)");
        }
        else {
            System.out.println(i);
        }
    }   

现在,我知道如何使用<c:forEach>来迭代集合,但问题是,如何将循环条件转换为JSTL / EL语法?顺便说一句,这是一个分页数字。

只是鬼混,我试过

<c:forEach begin="1" end="100" var="val">
    <c:out value="${val}"/>
</c:forEach>

但这不是我想做的事。

1 个答案:

答案 0 :(得分:0)

<c:forEach begin="1" end="100" var="val" varStatus="status">
   <c:choose>
      <c:when test="${currentPage == status.index}">
         <c:out value="${status.index} (Current)"/>
      </c:when>
      <c:otherwise>
         <c:out value="${status.index}"/>
      </c:otherwise>
   </c:choose>
</c:forEach>

但是你不应该在前端使用复杂的逻辑。它应该在后端完成。