【转】varStatus属性介绍及使用

jstl 专栏收录该内容
1 篇文章 0 订阅

学习过程中遇到varStatus的使用问题,该篇文章较为详细地解析该属性,故转载。

varStatus是<c:forEach>jstl循环标签的一个属性,varStatus属性。就拿varStatus=“status”来说,事实上定义了一个status名的对象作为varStatus的绑定值。该绑定值也就是status封装了当前遍历的状态,比如,可以从该对象上查看是遍历到了第几个元素:${status.count}

我们常会用c标签来遍历需要的数据,为了方便使用,varStatus属性可以方便我们实现一些与行数相关的功能,如:奇数行、偶数行差异;最后一行特殊处理等等。先就varStatus属性常用参数总结下:

${status.index} 输出行号,从0开始。${status.count} 输出行号,从1开始。${status.current} 当前这次迭代的(集合中的)项${status.first} 判断当前项是否为集合中的第一项,返回值为true或false${status.last} 判断当前项是否为集合中的最后一项,返回值为true或falsebegin、end、step分别表示:起始序号,结束序号,跳跃步伐。
如:<c:forEach begin=‘1’ end=‘5’ step=‘2’ items=’${list}’ var=‘item’>表示:操作list集合汇中1~5条数据,不是逐条循环,而是按每2个取值。即操作集合中的第1、3、5条数据。
下面是我从网上找的图,觉得挺好,收藏了:c:forTokens items=“12,34,56,78.89” delims="," var=“dailyPrice”>

<c:out value="${dailyPrice}" />//以,号作为字符串分隔!变量名 delims属性可以随便加,可以有一个多或多个作为分隔符
我们最常用的就是count和index,用来搞斑马线表格
常见的用法的是<c:forEach var=“varity” items="${sessionScope.myList}" varStatus=“status”>

<c:if test="${status.count%2==0}" >

</c:if>
<c:if test="${status.count%2!=0}" >

</c:if>
Elements

</c:forEach>

<c:forEach var=“varity” items="${sessionScope.myList}" varStatus=“status”>
${status.first}/${status.last}
当前:${status.current}
</c:forEach>

原文地址:http://hi.baidu.com/hj2550438/item/d60128c51b982512b67a2489

  • 0
    点赞
  • 0
    评论
  • 2
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值