大家
我对Thymeleaf有问题,我尝试在for:each中设置变量“迭代器”。
默认情况下为“ iterator = 0;”但是,如果条件为true,则设置“ iterator + 1”,但即使条件为true,我的变量也始终为0。
我的下一个阻止条件需要这个“迭代器”,因为如果迭代器== 1,则我需要在视图中显示其他内容
在这里您可以看到我的代码:
<div class="col-2" th:each="t:${horaire.terrains}">
<h2 th:text="${t.nomTerrain}"></h2>
<table border="1px" >
<tr th:each="h,index : ${heures.subList(0,15)}" >
<td>
<th:block th:each="resa:${reservations}"
th:if="${resa.dateReservation eq date && resa.heureDebut eq h}">
<a>reserve</a>
<p th:with="iterator=${iterator+1} "></p>
<!--<p th:text="${iterator}"></p>-->
</th:block>
<th:block th:if="${iterator eq 0 }">
<a th:text="${h}" th:href="@{addResa(heure=${h} ,
terrain=${t.id} ,date=${date},date2=${index.index+1},
listeHeures = ${heures} )}"></a>
</th:block>
</td>
</tr>
<!--<a th:text="${h}" th:href="@{addResa(heure=${h} , terrain=${t.id}
,date=${date},date2=${index.index+1}, listeHeures = ${heures} )}">
</a>-->
</table>
</div>
在这里,在我的控制器中,您可以看到变量迭代器:
int iterator=0;
model.addAttribute("iterator",iterator);
答案 0 :(得分:0)
在控制器模型中需要设置迭代器变量值是什么。
为什么不能在下面使用
Thymeleaf th:each
允许您声明迭代状态变量
然后在循环中,您可以引用iter.index
和iter.size
。
请参见http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#keeping-iteration-status