使用表在指定结构的jsp页面中安排动态列表

时间:2013-02-28 14:26:28

标签: java jsp jstl

我有一个动态生成的列表。我希望这个列表应该使用表格显示。结构应如下

假设我有6个值,前3个值应该在第一行,第二个3应该在第二行 我怎么能动态地做到这一点

<table>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>

上述tr结构应该每3个元素重复

我尝试使用divs.its工作,但我希望使用表实现相同。 帮助我。

的问候, 拉维。

我的意思是说列表是bean.in每个bean的集合我有一些值。所以我的表如下所示

这是迭代列表

<c:forEach value="#{theList}" var="item">

<div class="customer">
<p>${item.field1}</p>
<p>${item.field1}</p>
</div>

</c:foreach>
来自div客户的

应该在以下结构中

  • 前3个bean应位于第3行
  • 的第一行
  • 第二个3个bean应该在第二行,包含3列
  • 继续...

3 个答案:

答案 0 :(得分:1)

使用JSTL:

<table>
    <c:forEach items="#{theList}" var="item" varStatus="i">
    <c:if test="${i.index % 3 == 0 or i.begin}">
    <tr>
    </c:if>
        <td>${item.field}</td>
    <c:if test="${i.index % 3 == 0 or i.last}">
    </tr>
    </c:if>
    </c:forEach>
</table>

答案 1 :(得分:0)

<c:forEach items="${loopableObject}" var="theObject" varStatus="theCount">
 <table>
  <tr>
    <c:if test='${(status.index) lt 3}'>

    <td>${item.field1}</td>
    <td>${item.field2}</td>
    <td>${item.field3}</td>

   </c:if>
 </tr>

 <tr>
   <c:if test='${(status.index) gt 2}'>
    <td>${item.field1}</td>
    <td>${item.field2}</td>
    <td>${item.field3}</td>

   </c:if>
</tr>
</table>
</c:forEach>

答案 2 :(得分:0)

虽然我还没有测试过,但这样的事情可能有用。

<table>
    <tr>
        <c:forEach var="item" items="${yourList}" varStatus="loopStatus">
            <c:if test="${loopStatus.index % 3 == 0 }"><tr></c:if>
                <td><c:out value="${item}"/></td>
            <c:if test="${loopStatus.index % 3 == 0 }"></tr></c:if> 
        </c:forEach>
        <c:if test="${yourList.size % 3 != 0 }"></tr></c:if>
</table>