th:each的用法
时间: 2024-01-08 18:02:01 浏览: 35
th:each 是 Thymeleaf 模板引擎中的一个迭代器,用于遍历集合或数组中的每个元素,并将每个元素渲染到模板中。其基本语法格式如下:
```
<th:block th:each="item : ${items}">
<p th:text="${item}">Item</p>
</th:block>
```
其中,`th:each` 属性指定了迭代器的名称和要遍历的集合或数组,`${items}` 表示从模型中获取名为 `items` 的属性,并将其作为集合或数组进行遍历。在迭代器内部,可以使用 `${item}` 表达式获取当前元素,并将其渲染到模板中。
相关问题
th:each 序号怎么获取
在 Thymeleaf 中,可以使用 `#numbers.sequence` 来获取序号。具体方法如下:
1. 在 th:each 中添加 `th:each="(item, iter) : ${items}"`,其中 `iter` 表示迭代器。
2. 在需要获取序号的地方,使用 `${#numbers.sequence(iter.index, 0, 1)}` 来获取序号。其中,`iter.index` 表示当前循环的下标,`0` 表示起始值,`1` 表示步长。
下面是一个示例代码:
```
<ul>
<li th:each="(item, iter) : ${items}">
<span th:text="${#numbers.sequence(iter.index, 0, 1)}"></span>
<span th:text="${item}"></span>
</li>
</ul>
```
这段代码将会输出一个有序列表,列表中的每一项都包含一个序号和对应的值。
th:each 循环固定次数
在 Thymeleaf 中,th:each 循环是基于集合的,它会遍历整个集合来生成相应的 HTML 内容。如果你想循环固定次数,可以使用 Thymeleaf 的内置变量 #numbers 来实现。例如,要循环 5 次,可以使用以下代码:
```
<div th:each="i : ${#numbers.sequence(1,5)}">
<p th:text="${i}">Iteration</p>
</div>
```
这里使用了 #numbers.sequence(start, end) 方法来生成一个从 start 到 end 的整数序列,将其作为 th:each 循环的参数。这样,循环就会执行 5 次,分别输出 1~5 的数字。