您的位置:首页 > 编程语言 > Java开发

Jstl标签库代替 struts2 标签

2015-05-31 21:43 477 查看
使用标签库时候,我习惯性的把能把struts2 的标签用jstl替换的就替换,不能替换的就直接用了!大多数是可以替换的

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

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

status.index输出行号,从0开始。{status.index} 输出行号,从0开始。{status.count} 输出行号,从1开始。status.current当前这次迭代的(集合中的)项{status.current} 当前这次迭代的(集合中的)项{status.first} 判断当前项是否为集合中的第一项,返回值为true或false${status.last} 判断当前项是否为集合中的最后一项,返回值为true或falsebegin、end、step分别表示:起始序号,结束序号,跳跃步伐。

如:表示:操作list集合汇中1~5条数据,不是逐条循环,而是按每2个取值。即操作集合中的第1、3、5条数据。

下面是我从网上找的图,觉得挺好,收藏了:c:forTokens items=”12,34,56,78.89” delims=”,” var=”dailyPrice”>



//以,号作为字符串分隔!变量名 delims属性可以随便加,可以有一个多或多个 作为分隔符

我们最常用的就是count和index,用来搞斑马线表格

常见的用法的是

<c:forEach var="varity" items="${sessionScope.myList}" varStatus="status">
                                 <!--实现斑马线效果--> 
                                 <c:if test="${status.count%2==0}" >
                                       <tr bgcolor="lightyellow">
                                  </c:if>
                                  <c:if test="${status.count%2!=0}" >
                                       <tr>
                                  </c:if>
                                       <td>Elements</td>
                                 </tr> 
                        </c:forEach>

<c:forEach var="varity" items="${sessionScope.myList}" varStatus="status">
         ${status.first}/${status.last}
               当前:${status.current}
 </c:forEach>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: