我在Struts2中嵌套了迭代:

<s:iterator var="gift" value="user.gift">
    <s:iterator value="giftItems">
        <s:property value="type"/>
    </s:iterator>
</s:iterator>

我只想最多10个type。如何在Struts2迭代中的某个点中断?我可以有一个计数器变量,但不知道要在迭代中中断。

谢谢。

最佳答案

如果在开始迭代之前知道何时中断,则可以使用begin和end属性。如果必须在迭代内计算中断,则在执行迭代之前,设置变量并每次使用一次检查其值。在后一种情况下,循环从技术上讲不会“中断”,但效果是相同的。

<s:set var = "breakLoop" value = "%{false}" />
<s:iterator....>
<s:if test = "!#breakLoop">
     //process here and change the var to true based on some codition
    <s:set var = "breakLoop" value = "%{true}"/>
</s:if>
</s:iterator>

10-04 12:36
查看更多