thymeleaf的th:each双层嵌套循环
时间: 2023-08-16 16:24:44 浏览: 205
如果需要在Thymeleaf中实现双层嵌套循环,可以使用th:each嵌套的方式来实现。例如:
```
<div th:each="item1 : ${list1}">
<p th:text="${item1.name}"></p>
<ul th:each="item2 : ${item1.list2}">
<li th:text="${item2.name}"></li>
</ul>
</div>
```
其中,list1是外层循环的列表,item1是当前循环到的对象,list2是item1中需要循环的列表,item2是当前循环到的对象。这样就可以实现双层嵌套的循环了。
相关问题
thymeleaf th:each循环js语句
Thymeleaf 中可以使用 th:each 指令来循环遍历一个集合,同时可以在循环体中嵌入 JavaScript 代码。以下是一个示例:
```html
<ul>
<li th:each="item : ${items}">
<span th:text="${item.name}"></span>
<script th:inline="javascript">
var value = [[${item.value}]]; // 在循环体中定义 JavaScript 变量
console.log(value);
</script>
</li>
</ul>
```
在上面的例子中,我们使用 th:each 遍历了一个名为 items 的集合,循环变量名为 item,然后在循环体中嵌入了 JavaScript 代码,使用 th:inline="javascript" 指定了内联 JavaScript 模式。在 JavaScript 代码中,我们使用了 Thymeleaf 的表达式 [[${item.value}]] 来获取 item 对象中的 value 属性,并将其赋值给了 JavaScript 变量 value。最后,我们在控制台中打印了这个变量的值。
需要注意的是,在内联 JavaScript 模式下,Thymeleaf 中的表达式需要使用双重方括号 [[...]] 来包裹,以避免与 JavaScript 中的语法冲突。
th:each指定一段被th:each包裹的代码不参与循环
th:each指定的代码块会被循环执行,而不是不参与循环。\[2\]在Thymeleaf中,th:each用于遍历数组、List、Set、Map等数据,并将数据中的每个元素应用于指定的代码块。在代码块中,可以使用迭代状态变量(如loopStatus)来获取当前迭代的信息。\[3\]因此,被th:each包裹的代码块会被循环执行,每次迭代都会使用不同的数据元素。
#### 引用[.reference_title]
- *1* *2* *3* [4)Thymeleaf th:each 循环迭代与 th:if、th:switch 条件判断](https://blog.csdn.net/wangmx1993328/article/details/84702386)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文