EL表达式与JSTL标签map遍历varStatus属性下标使⽤在JSP页⾯开发中,JSTL标签库迭代标签<c:forEach>为我们迭代遍历数组集合提供了⼀种选择。
遍历过程中varStatus属性为我们遍历集合提升了很⼤操作空间。
贴⼀下具体使⽤:
需求:有⼀map集合,⽣成标准table,三个元素⼀换⾏
<c:forEach var="entry" items="${map}" begin="0" end="${fn:length(map)}" varStatus="status">
<c:choose>
<c:when test="${(status.index)%3==0}">
<tr><td>${entry.key}:${entry.value}</td>
</c:when>
<c:when test="${fn:length(map) == unt || (status.index)%3==2}">
<td>${entry.key}:${entry.value}</td></tr>
</c:when>
<c:otherwise>
<td>${entry.key}:${entry.value}</td>
</c:otherwise>
</c:choose>
</c:forEach>
说明:1、items:是集合,⽤EL表达式;
2、var:变量名,存放items ,代表集合中每⼀条数据
3、varStatus: 显⽰循环状态的变量,通过下⾯⼏个属性,可以⽅便使⽤迭代索引值,进⾏特殊判断业务:
①index:从0开始; 显⽰当前迭代的索引值
②count:元素位置,从1开始;  显⽰当前迭代显⽰的⾏位置。通过配合判断语句,可实现上⾯例⼦中三个⼀换⾏的效果
③first:如果是第⼀个元素则显⽰true;
④last:如果是最后⼀个元素则显⽰true;el表达式获取值
4、begin:循环的初始值(整型);
5、end: 循环结束 ;
6、step:步长,循环间隔的数值;
   ${fn:xxx} 为JSTL提供的⼀套标准函数库,包含了⼀些字符串处理的⽅法。
在JSP页⾯中引⼊函数声明,就可以使⽤了:<%@ taglib prefix="fn" uri="java.sun/jsp/jstl/functions" %>

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。