2010-12-14 53 views
4

我正在使用Struts2迭代器来设置表格中复选框的列表。我想有每行10复选框,所以我做了以下内容:计算索引int的模块Struts2迭代器

<table> 
    <tr> 
    <s:iterator value="securityMasterFields" status="fieldNameStatus" var="fieldName"> 
     <s:if test="#fieldNameStatus.index % 10 ==0"> 
       </tr><tr> 
     </s:if> 
     <td> 
      <s:checkbox name="fieldsToShow" fieldValue="%{fieldName}" value="%{fieldName}"/> 
     </td> 
    </s:iterator>  
    </tr> 
</table> 

它从来没有经历的,如果,所以我假设国防部没有被正确地计算。我该怎么做?

谢谢

回答

1

这对我来说很好。两个想法:

1)尝试打印s中的测试结果:属性标记

2)它看起来像你将有空表行...你看生成的HTML或只是输出,因为如果它只是输出,那么除非你有一些CSS给你一些表格填充和边框,没有一个空的'td'元素,那么该行可能会崩溃,并使其看起来好像没有添加任何东西。所以请确保您也打印空的'td'元素!

+0

该循环正在工作,唯一的问题是模块finnish行并开始一个新的,但我用圆括号固定它。无论如何谢谢。 – 2010-12-15 14:45:28

5

那么,我不得不添加一些括号,它工作正常。循环正在工作,只是它没有通过if。

<s:if test="(#fieldNameStatus.index % 8)==0"></tr><tr></s:if>