2012-02-28 55 views
4

您好,我目前正在迭代並顯示錶中的字段集列表。爲了試圖使佈局有點體面。每當循環到達第5個fieldSet時,我都想創建一個新行。由於JSTL在循環中每隔5個字段集創建一個新行

JSP:

<div class="det" id="displayFields"> 
    <table class="det"> 
     <tr> 
      <td> 
       <c:forEach items="${detFieldMap}" var="detFieldEntry">  
        <fieldset class="det">   
         <legend>${detFieldEntry.key}</legend> 
         <c:forEach items="${detFieldEntry.value}" var="detBean">  
          <input type="checkbox" name="fieldNames" value="${detBean.fieldName}" <c:if test="${preselectionMap[detBean.fieldName]}">checked="checked"</c:if>>${detBean.displayName}</input>   
          </br>  
         </c:forEach> 
        </fieldset> 
       </c:forEach> 
      </td> 
     </tr> 
    </table> 
</div> 

回答

3

這工作:

<div class="det" id="displayFields"> 
    <table class="det"> 
     <tr> 
      <td> 
       <c:forEach items="${detFieldMap}" var="detFieldEntry" varStatus="loop"> 
        <c:if test="${not loop.first and loop.index % 5 == 0}"> 
         </td> 
          </tr> 
         <tr> 
          <td> 
        </c:if> 
        <fieldset class="det">   
         <legend>${detFieldEntry.key}</legend> 
         <c:forEach items="${detFieldEntry.value}" var="detBean">  
          <input type="checkbox" name="fieldNames" value="${detBean.fieldName}" <c:if test="${preselectionMap[detBean.fieldName]}">checked="checked"</c:if>>${detBean.displayName}</input>    
          </br>  
         </c:forEach> 
        </fieldset> 
       </c:forEach> 
      </td> 
     </tr> 
    </table> 
</div> 
+1

考慮到循環的指數是從零開始的,你可能想要做的,而不是像'' – 2014-06-02 08:36:56

相關問題