s:iterator 迭代 一行两条数据

假若有jsp页面要实现一个列表信息,格式以下: 
第1条信息 第2条信息 
第3条信息 第4条信息 
第5条信息 第6条信息 
第7条信息 第8条信息 html

搜索过别的方法,不少人运用jsp代码写入页面来进行循环判断。其实用struts2自带的标签能够实现一样效果,利用iterator标签进行循环,里面用if标签判断什么时候加入tr标签的开头和结尾,下面实现了两列信息列表的状况: jsp

<table width="540" border="0" cellspacing="0" cellpadding="0">      
       <s:iterator value="popList" status="count">      
     
         <s:if test="#count.odd||#cout.first">      
              <tr>          
         </s:if>      
     
       <td width="200" height="20">      
         <a href="listPop.action?oid=<s:property value="uid" />" target="_blank">  
<s:property value="code"/></a>  
       </td>  
        <s:if test="#count.even||#count.last">      
            </tr>          
        </s:if>      
        </s:iterator>      
</table>

由于iterator标签有以下方法: 
boolean isEven() 当前迭代元素索引是否为偶数; 
boolean isOdd() 当前迭代元素索引是否为奇数; 
boolean isLast() 是否为最后一条元素; 
boolean isFirst() 是否为第一条元素。 
有以上元素,那么判断什么时候加入tr就很是方便。 

假如是多列(两列以上),那么咱们就能够使用以下方法: 
int getIndex() 返回当前迭代元素的索引 
用它来计算你什么时候须要加入tr标签的开头和结尾,无非就是if判断的表达式复杂一些,方法仍是同样的。  ui

相关文章
相关标签/搜索