c:forEach varStatus 属性
- current: 当前这次迭代的(集合中的)项
- index: 当前这次迭代从 0 开始的迭代索引
- count: 当前这次迭代从 1 开始的迭代计数
- first: 用来表明当前这轮迭代是否为第一次迭代的标志
- last: 用来表明当前这轮迭代是否为最后一次迭代的标志
- begin: 属性值
- end: 属性值
- step: 属性值
例如:
<c:foreach items="${sessionScope.userList}" var="userItem" begin="1" end="10" step="3" varStatus="userStatus"> XXX </c:foreach>
实例解读: 对 session 对象存储的 userList 集合对象进行遍历,每次访问的项暂时存储在 userItem 变量中,从索引 1 开始至索引 10 进行访问,但不是依次访问,每隔 3 个元素访问一次。每次访问项的状态相关值由 userStatus 对象暂存。
<c:foreach> 的 varStatus 属性暂存项的相关状态属性,可由 EL 表达式引用。
${userStatus.index} 此项的索引,从0开始 ${userStatus.count} 此项的计数序号,从1开始 ${userStatus.first} 此项是否是第一项,布尔值 ${userStatus.last} 此项是否是最后一项,布尔值 ${userStatus.begin} 此次迭代的起始索引,对应<c:foreach>中begin属性值 ${userStatus.end} 此次迭代的终止索引,对应<c:foreach>中end属性值 ${userStatus.step} 此次迭代的跳跃步伐,对应<c:foreach>中step属性值