Struts2中s:iterator标签的使用详解

来源:互联网 发布:android java 编辑:程序博客网 时间:2024/05/21 07:04

使用iterator遍历一个值。一个可迭代的值可以是Java.util.Collection,java.util.Iterator中的任何一个。

参数

beginfalse0falseInteger若指定,那么迭代器将从该索引开始endfalse该'values' List或array的大小, 或若'step'为负则为0falseInteger若指定,那么迭代器将到该索引结束(含该索引)idfalse falseString已过期。用'var'取代statusfalsefalsefalseBoolean若指定,那么在每次迭代时,迭代状态的实例将被压入堆栈stepfalse1falseInteger若指定,在每次迭代时,迭代索引将加上此值。它可以是一个负值,在这种情况下,'begin'必须是大于'end'valuefalse falseString可迭代源对象进行遍历,另外对象本身将进入一个新创建的列表varfalse falseString名字用于将引用的值推入值栈

例子

下面的示例检索当前对象的值栈getDays()方法的值,并用它来遍历。<s:property/>标签打印出迭代器的当前值。

<s:iterator value="days">    <p>day is: <s:property/></p>  </s:iterator> 
下面的示例使用一个Bean标签,并将其放置到ActionContext中。 iterator标签将从ActionContext中检索该对象,然后同上调用其getDays()方法。status属性也可以用来创建一个IteratorStatus对象,该对象在这个例子中,odd()方法被用来交替行颜色:

<s:bean name="org.apache.struts2.example.IteratorExample" var="it">    <s:param name="day" value="'foo'"/>    <s:param name="day" value="'bar'"/>  </s:bean>  <p/>  <table border="0" cellspacing="0" cellpadding="1">  <tr>    <th>Days of the week</th>  </tr>  <p/>  <s:iterator value="#it.days" status="rowstatus">    <tr>      <s:if test="#rowstatus.odd == true">        <td style="background: grey"><s:property/></td>      </s:if>      <s:else>        <td><s:property/></td>      </s:else>    </tr>  </s:iterator>  </table> 




0 0