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

相關文章
相關標籤/搜索