`
dilantaya
  • 浏览: 101679 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

struts2 <s:iterator> status属性

 
阅读更多
iterator标签主要是用于迭代输出集合元素,如list set map 数组等,在使用<s:iterator/>标签的时候有三个属性值得我们关注

1. value属性:可选的属性,value属性是指一个被迭代的集合,使用ognl表达式指定,如果为空的话默认就是ValueStack栈顶的集合.
2.id属性:可选属性, 是指集合元素的id
3.status属性:可选属性,该属性在迭代时会产生一个IteratorStatus对象,该对象可以判断当前元素的位置,包含了以下属性方法:

int getCount(); 迭代元素个数

int getIndex(); 迭代元素当前索引

boolean getFirst(); 是否为第一个

boolean getEven(); 是否为偶

boolean getLast(); 是否最后一个

bolean getOdd(); 是否为奇

由于iteratorstatus对象并不是ognl的根对象因此访问需要加上 #访问如下例子:

<s:iterator value=”{’dd’,'bb’,'cc’}” status=”st”>

<s:if test=”#st.odd”>

<s:property value=”#st.index”/>

</s:if>

</s:iterator>

此外:iterator也可以迭代map对象,map对象中有几对key-value 就迭代几次,分别使用
<s:property value=”key”/>
<s:property value=”value”/>

输出即可.


案例如下(WebWork标签):实现奇偶行不同颜色显示

JSP中结果集显示如下:

<ww:iterator value="resultList" status="status">

<tr class="<ww:if test="#status.even">row-even</ww:if><ww:else>row-odd</ww:else>">

<td>

<ww:property value=""/>

</td>

</tr>

</ww:iterator>

样式表可以参考:

.row-even{background-color:#def7c2;}

.row-odd{background-color:#c8e7a6;}

除了使用#status.even判断是否偶数行外,还有其他几个属性可以使用:

#status.odd 是否奇数行

#status.count 当前行数

#status.index 当前行的序号,从0开始[#status.count=#status.index+1]

#status.first 是否第一行

#status.last 是否最后一行

#status.modules(int) 当前行数取模

分享到:
评论

相关推荐

    Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)

    &lt;s:textfield name="list[%{#status.index}]" label="Item"&gt;&lt;/s:textfield&gt; &lt;/s:iterator&gt; ``` 对于`Map`,可以使用键值对的方式: ```jsp &lt;s:iterator value="map"&gt; &lt;s:textfield name="map['key']" label...

    Struts2 iterator 标签遍历 Map,List,数组(三十六)

    &lt;s:iterator value="myList" status="itemStatus"&gt; &lt;p&gt;Item #{itemStatus.index + 1}: &lt;s:property value="#itemStatus.item" /&gt;&lt;/p&gt; &lt;/s:iterator&gt; ``` 在这里,`status`属性定义了一个变量`itemStatus`,我们...

    Struts2标签 UI标志又可以分为表单UI和非表单UI两部分

    &lt;s:iterator value="linkList" status="bean"&gt; &lt;tr&gt; &lt;td class="data_tab_tdcl"&gt; &lt;s:property value="#bean.Index+1"/&gt; &lt;/td&gt; &lt;td class="data_tab_tdcl"&gt; &lt;s:property value="link_title"/&gt; &lt;/td&gt; &lt;/tr&gt; ...

    s:iterator 用法.pdf

    index is:&lt;s:property value='status.index'/&gt;attrName is:&lt;s:property value='%{id}'/&gt; attrName is:&lt;s:property value='%{attrV[#status.index]}'/&gt; &lt;/s:iterator&gt; ``` 总结,Struts2的`s:iterator`标签是...

    s:iterator 用法 (2).docx

    总结,`s:iterator` 标签是Struts2中非常重要的一个标签,它极大地简化了JSP页面中对集合数据的处理,无论是基本类型、复杂对象还是Map,都可以通过配置 `value`、`id` 和 `status` 等属性轻松实现遍历和访问。...

    s:iterator 用法.docx

    attrValue is:&lt;s:property value='%{attrV[#status.index]}'/&gt; &lt;/s:iterator&gt; ``` 总之,Struts2 的 `s:iterator` 标签提供了强大的功能,使我们能够在 JSP 页面上方便地遍历和展示各种数据结构。通过合理的使用...

    struts2 iterator标签遍历二维数组

    在Struts2框架中,`&lt;s:iterator&gt;`标签被广泛用于遍历集合或数组等数据结构。本文将深入探讨如何使用Struts2中的`&lt;s:iterator&gt;`标签来遍历二维数组,并通过实例代码来具体说明其用法。 ### Struts2 Iterator标签 ##...

    s:iterator 用法 (2).pdf

    总结来说,`s:iterator`标签在Struts2中扮演了重要的角色,它使得遍历和操作集合数据变得简单而灵活,无论是基础的数组、列表,还是复杂的Map和对象属性,甚至是多个对应关系的列表,都能轻松处理。通过设置`value`...

    struts2中iterator 标签的使用详解

    在Struts2框架中,`&lt;s:iterator&gt;`标签是一个非常强大的工具,用于在JSP页面上循环遍历集合数据,如列表(List)、数组、Map等。它允许开发者以一种动态且灵活的方式展示来自后端的数据,从而极大地提高了开发效率和...

    Strust2的if-else <tr></tr>用法

    此外,Struts2还提供了`&lt;s:if&gt;`和`&lt;s:else&gt;`的嵌套使用,可以实现更复杂的条件判断逻辑。同时,可以使用`&lt;s:choose&gt;`, `&lt;s:when&gt;`, 和 `&lt;s:otherwise&gt;`标签来创建类似于switch-case的结构: ```jsp &lt;s:choose&gt; &lt;s:...

    struts2-s标签

    而在 Struts2 中,所有的标签都被统一管理,并通过在 JSP 文件头部声明 `&lt;%@ taglib prefix="s" uri="/struts-tags" %&gt;` 来启用 Struts2 的标签库。这种方式简化了开发过程中的配置工作,使得开发者可以更加专注于...

    struts2标签之列求和

    在`&lt;s:iterator&gt;`标签内,通过`value`属性指定要遍历的集合(`distBldList`),并通过`status`属性获取当前迭代的状态信息。在每次迭代过程中,对于每个列数据(如`bld_num`、`house_num`等)都通过`&lt;s:set&gt;`标签将...

    Struts2标签详解及具体实例解析

    &lt;s:iterator value="usersList" status="status"&gt; &lt;s:property value="username"/&gt; &lt;/s:iterator&gt; ``` - **解释**:遍历“usersList”集合,并显示每个用户的用户名。 ##### 30. `&lt;s:label&gt;` 标签标签 - **用途...

    Struts2标签使用.docx

    `&lt;s:iterator&gt;`则用于遍历集合,如`&lt;s:iterator value="list" status="item"&gt;&lt;s:property name="item.property"/&gt;&lt;/s:iterator&gt;`,status属性可以为迭代器创建别名。 以上就是Struts2中部分常用的标签及其用法,...

    struts2遍历集合

    &lt;s:iterator id="user" value="#users" status="status"&gt; &lt;s:property value="%{#user.name}" /&gt; - &lt;s:property value="%{#user.age}" /&gt; &lt;s:if test="%{#user.age &lt; 18}"&gt; &lt;p&gt;您还未成年,请在父母陪同下使用...

    Struts2教育資料

    此外,Struts2还提供了一些其他标签,如表单标签(`&lt;s:form&gt;`)、错误处理标签(`&lt;s:fielderror&gt;`、`&lt;s:errors&gt;`)、国际化标签(`&lt;s:text&gt;`和`s:resourcebundle&gt;`)等,它们帮助开发者轻松处理表单验证、错误提示和...

    struts2迭代 Map List

    `&lt;s:iterator&gt;`标签是Struts2中最常用的标签之一,它用于迭代任何可迭代的对象,包括List和Map。基本语法如下: ```jsp &lt;s:iterator value="collection" var="item"&gt; &lt;!-- 迭代体 --&gt; &lt;/s:iterator&gt; ``` ...

    Struts2页面开发中常用标签

    &lt;s:iterator value="userList" status="u"&gt; &lt;s:property value="userName"/&gt; &lt;/s:iterator&gt; ``` 此标签能有效处理大量数据展示,`value`属性指定集合名称,`status`属性可提供额外的迭代信息。 ### 5. URL生成...

    Struts2学习之二--Struts2标签介绍

    &lt;s:iterator value="#request.names" status="stuts"&gt; &lt;s:if test="#stuts.odd==true"&gt; &lt;li&gt;White&lt;s:property/&gt;&lt;/li&gt; &lt;/s:if&gt; &lt;s:else&gt; &lt;li style="background-color:gray"&gt;&lt;s:property/&gt;&lt;/li&gt; &lt;/s:else&gt; &lt;/s:...

    在struts2中要实现for循环

    `&lt;s:iterator&gt;`标签是Struts2中最常用的标签之一,它可以用来遍历集合(如List、Set、Map等)。但是,如果想要实现类似Java中的`for`循环功能,可以利用`org.apache.struts2.util.Counter`类来实现。 ### 实现步骤 ...

Global site tag (gtag.js) - Google Analytics