EL表达式与JSTL标签map遍历varStatus属性下标使用
2016-07-13 10:30
316 查看
在JSP页面开发中,JSTL标签库迭代标签<c:forEach>为我们迭代遍历数组集合提供了一种选择。
遍历过程中varStatus属性为我们遍历集合提升了很大操作空间。
贴一下具体使用 :
说明:1、items:是集合,用EL表达式;
2、var:变量名,存放items ,代表集合中每一条数据
3、varStatus: 显示循环状态的变量,通过下面几个属性,可以方便使用迭代索引值,进行特殊判断业务:
①index:从0开始; 显示当前迭代的索引值
②count:元素位置,从1开始; 显示当前迭代显示的行位置。通过配合判断语句,可实现上面例子中三个一换行的效果
③first:如果是第一个元素则显示true;
④last:如果是最后一个元素则显示true;
4、begin:循环的初始值(整型);
5、end: 循环结束 ;
6、step:步长,循环间隔的数值;
${fn:xxx} 为JSTL提供的一套标准函数库,包含了一些字符串处理的方法。
在JSP页面中引入函数声明,就可以使用了:<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
遍历过程中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) == status.count || (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;
4、begin:循环的初始值(整型);
5、end: 循环结束 ;
6、step:步长,循环间隔的数值;
${fn:xxx} 为JSTL提供的一套标准函数库,包含了一些字符串处理的方法。
在JSP页面中引入函数声明,就可以使用了:<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
相关文章推荐
- 【高斯消元】BZOJ1013-[JSOI2008]球形空间产生器sphere
- bzoj1449/2895[JSOI2009]球队收益
- 用原生JS对AJAX做简单封装的实例代码
- js中的windows对象
- JavaScript语言基础-环境搭建
- JS cookie
- js中的Array对象
- javascript类型系统――undefined和null全面了解
- js中Math对象的属性方法
- JavaScript ES6解构赋值指南
- JSoup解析html常见问题
- js实现首页图片的轮播效果
- Jsp的作用域
- extjs中submit提交后不进入success也不进入failure 解决方法
- js ajax调用请求
- js ajax调用请求
- js ajax调用请求
- 浅谈javascript中关于日期和时间的基础知识
- 强大的js会图框架raphael-js
- 过目不忘JS正则表达式