zoukankan      html  css  js  c++  java
  • 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) == 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" %>

  • 相关阅读:
    主从复制(多台服务器搭建环境)【十五】
    Linux中kill,pkill,killall和xkill命令汇总讲解
    redis持久化机制【十三】
    守护进程详解及创建,daemon()使用
    【small项目】MySQL第二天早上第一次连接超时报错,解决方法com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:
    Redis事务【十二】
    乐观锁和悲观锁的区别
    Redis 命令与连接【十一】
    Redis 配置【十】
    DB_Links创建际删除
  • 原文地址:https://www.cnblogs.com/youhun/p/5665960.html
Copyright © 2011-2022 走看看