struts2 循环标签使用

时间:2022-11-02 10:25:25

struts2 counter循环标签的使用:

struts2随提供了循环控制标签<s:iterator/>,,使用起来也比较方便,但在具体的应用中,也有不方便之处,他没有像struts1的<c:foreach/>标签,提供了begin、end等属性,支持自增变量的循环。遇到这种问题怎么解决??struts2提供了<s:bean/>标签,且提供了一个bean类:org.apache.struts2.util.Counter,该类中有first、last等属性,可用使用它获取自增值,如下:

<s:bean name="org.apache.struts2.util.Counter" id="counter">
<s:param name="first" value="1" />
<s:param name="last" value="10" />
<s:iterator>
<s:property/>
</s:iterator>
</s:bean>

其中first属性指定循环起始值,last指定循环终止值,其它相关属性可以查看org.apache.struts2.util.Counter类源码。在下面迭代器中输入循环的当前值,即:current-1

 


例1:分页中,select自增计数的控制
<select name="page"
onchange="javascript:window.location='newslist.jsp?page='+this.value">
<s:bean name="org.apache.struts2.util.Counter">
<s:param name="first" value="1" />
<s:param name="last" value="pageCount" />
<s:iterator>
<option value="<s:property />"
<s:if test="%{page==(current-1)}">selected="selected"</s:if>>
<s:property />
</option>
</s:iterator>
</s:bean>
</select>

 

 


例2:

 

<s:bean name="org.apache.struts2.util.Counter" id="counter">
                        <s:param name="first" value="1"></s:param>
                        <s:param name="last" value="question.number"></s:param>
                        <s:iterator>
                            <tr>
                                <td width="30%" bgcolor="#e6ecf9" align="right">
                                    选项&nbsp;<s:property/>
                                </td>
                                <td>
                                    <s:textfield name="question.items" cssClass="test" size="70%" bgcolor="#e6ecf9"></s:textfield>
                                </td>
                            </tr>
                        </s:iterator>
</s:bean>

原文出自http://huibin.javaeye.com/blog/674789

 

 

Struts2标签实现for循环(可以固定次数)

关键字: struts2标签实现for循环固定次数

Java代码  struts2 循环标签使用
  1. <s:bean name="org.apache.struts2.util.Counter" id="counter">   
  2.    <s:param name="first" value="1" />   
  3.    <s:param name="last" value="10" />   
  4.    <s:iterator>   
  5.      counter:<s:property value="curent-1"/>   
  6.    </s:iterator>   
  7. </s:bean>  

 

其中first属性指定循环起始值,last指定循环终止值,其它相关属性可以查看org.apache.struts2.util.Counter类源码。在下面迭代器中输入循环的当前值,即:current-1