在这一篇中Servlet系列学习笔记9 --- JSTL标准标签库,我们介绍了JSTL基本知识点,一般情况下,JSTL我都是拿来迭代对象或者集合的。那么,如果我们知识要迭代次数而已该怎么办呢?这就要用到forEach标签中的begin和end标签就可以了。
属性 | 描述 | 是否必要 | 默认值 |
items | 要被循环的信息 | 否 | 无 |
var | 代表当前条目的变量名称 | 否 | 无 |
begin | 开始的元素索引 | 否 | 0 |
end | 最后一个元素的索引 | 否 | Last |
step | 每一次迭代的步长 | 否 | 1 |
varStatus | 代表循环状态的变量名称 | 否 | 无 |
代码如下
<c:forEach var="num" begin="1" end="${pm.pageCount}">
//执行代码体......
</c:forEach>
在这里呢,迭代的终止次数,是我在后台返回的一个数值pm.pageCount,它表示是页面的页数。变量num就是每次迭代的数值。所以通过这种方法我们就可以实现通过迭代来输出HTML标签,例如下面所示:
<c:forEach var="num" begin="1" end="${pm.pageCount}">
<c:choose>
<c:when test="${num eq 1}">
<option value="${num}" selected='selected'>${num} / ${pm.pageCount}</option>
</c:when>
<c:otherwise>
<option value="${num}">${num} / ${pm.pageCount}</option>
</c:otherwise>
</c:choose>
</c:forEach>
最终效果如下所示