如何增加变量insidet s:iterator标签

时间:2009-06-29 17:26:32

标签: struts2

我有一个s:iterator标签,如下所示

<s:iterator value="results">
    <s:property value="someIntValue"/>
</s:iterator>

在这个循环结束时,我想要someIntValue的总和。在简单的java中我会做这样的事情

variable += someIntValue

但这可以在struts2标签内完成吗?我查看了s:set标签的文档,但无法弄清楚如何实现这一目标。

2 个答案:

答案 0 :(得分:6)

<s:iterator value="users" status="itStatus">
    <li>
       <s:property value="#itStatus.count" />
    </li>
</s:iterator>

Count应该为您提供所需的价值。更多详情: link text

来自行动书中的struts:

有时需要知道正在进行的迭代的状态信息 地点。这是status属性的步骤.start属性,定义时, 提供可以提供的ActionContext中可用的IteratorStatus对象 简单的信息,如大小,当前索引,以及当前是否 对象是在偶数或奇数索引中 名单。 IteratorStatus对象可以是 通过给出的名称访问 状态属性。

答案 1 :(得分:2)

我认为这会对你有所帮助:

<% int variable = 0 %>

<s:iterator value="results">
    <s:property value="someIntValue" var="number"/>
    <% variable += ${number} %>
</s:iterator>

<%= variable %>