`

struts2 标签 <s:iterator> 迭代 循环table

    博客分类:
  • java
 
阅读更多
Struts2标签系列之<s:iterator> 迭代 一行两列2011-11-04 9:29假如有jsp页面要实现一个列表信息,格式如下:
第1条信息 第2条信息
第3条信息 第4条信息
第5条信息 第6条信息
第7条信息 第8条信息

搜索过别的方法,很多人运用jsp代码写入页面来进行循环判断。其实用struts2自带的标签可以实现同样效果,利用iterator标签进行循环,里面用if标签判断何时加入tr标签的开头和结尾,下面实现了两列信息列表的情况:



因为iterator标签有如下方法:
boolean isEven() 当前迭代元素索引是否为偶数; eg:count.even
boolean isOdd() 当前迭代元素索引是否为奇数; eg:count.odd
boolean isLast() 是否为最后一条元素;               eg:count.last
boolean isFirst() 是否为第一条元素。                  eg:count.fast
有以上元素,那么判断何时加入tr就非常方便。
假如是多列(两列以上),那么我们就可以使用如下方法:
int getIndex() 返回当前迭代元素的索引                 eg:count.index
用它来计算你何时需要加入tr标签的开头和结尾,无非就是if判断的表达式复杂一些,方法还是一样的。

例子:
这个是一行4列的情况
<table border="1">
<s:iterator value="xxx" status="status" >
<s:if "#status.index % 4 == 0">
<tr>
</s:if>
<td>
<s:property value="输出数据" />
</td>
<s:if "#status.index % 4 == 3 || #status.last">
</tr>
</s:if>


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics