【发布时间】:2013-03-11 12:48:25
【问题描述】:
目的(根据 forEach 循环)是在表格内每 3 行设置一个背景颜色。 我下面的代码不起作用。 表格正在正确返回,其中包含所有数据,但未设置颜色。
<c:forEach var="coffee" items="${collection}">
<tr class="${status.count % 3 == 0 ? 'even' : 'oneven'}"
${status.count % 3 == 0 ? 'even' : 'oneven'} >
<td> ${coffee.brand} </td>
<td> ${coffee.type} </td>
<td> ${coffee.country} </td>
</tr>
</c:forEach>
我的 CSS 类
tr.even { background: red; }
tr.odd { background: green; }
感谢您的帮助。
我找到了答案:
<h2>tabel with changing colors</h2>
<table border=1>
<tr>
<th>Brand</th>
<th>type</th>
<th>Country</th>
</tr>
<c:forEach var="coffees" items="${collection}" varStatus="status">
<tr class="${status.count % 3 == 0 ? 'even' : 'odd'}"
${status.count % 3 == 0 ? 'even' : 'odd'}>
<td>${coffees.brand}</td>
<td>${coffees.type}</td>
<td>${coffees.country}</td>
</tr>
</c:forEach>
</table>
【问题讨论】:
-
确认“even”实际上是为CSS中的tr元素定义的类。
-
“forEach”的“varStatus”是否分配给“status”?
-
<tr>中的 cssclass属性是否正确设置?此外,您的 css 似乎适用于<li>元素,而不是表格的<tr>元素。