一尘不染

如何使用JSP替换HTML表格的行颜色?

jsp

如何使用JSP替换HTML表格的行颜色?

我的CSS看起来像:

tr.odd {background-color: #EEDDEE}
tr.even {background-color: #EEEEDD}

我想用来<c:forEach>遍历一个集合。

<c:forEach items="${element}" var="myCollection">
  <tr>
    <td><c:out value="${element.field}"/></td>
    ...
  </tr>
</c:forEach>

我需要一个int计数变量或布尔奇/偶变量来跟踪行。然后我的<tr>标签看起来像:

<tr class="odd or even depending on the row">

阅读 263

收藏
2020-06-08

共1个答案

一尘不染

使用标签varStatus上的属性forEach,JSTL将使用javax.servlet.jsp.jstl.core.LoopTagStatus您指定的变量名称为您管理a的实例。

然后,您可以使用三元运算符轻松地输出适当的类名:

<c:forEach items="${element}" var="myCollection" varStatus="loopStatus">
  <tr class="${loopStatus.index % 2 == 0 ? 'even' : 'odd'}">
    ...
  </tr>
</c:forEach>

JSTL底漆从IBM有关于更多信息,core标签库以及它给你。

2020-06-08