【发布时间】:2021-03-14 18:30:24
【问题描述】:
我们如何在 Thymeleaf 页面上迭代列表?假设我有一个包含一个对象的列表
我可以在 Thymeleaf 页面上依次显示所有用户信息,但这实际上是我不想实现的。有什么方法可以让我一次显示一个用户,下一个按钮上会有两个按钮单击移动到下一个可用用户并显示信息并隐藏以前的用户信息,当单击上一个按钮时移回前一个。因为我有超过 20+ 甚至有时 50+ 的用户信息。
public class Info {
private String name;
private String dob;
private String university;
// constructor , getter and setter
}
我的控制器类
@GetMapping("/get/All-user-info")
public String getAllUserInfo(Model model){
List<Info> info = new ArrayList<>();
info.add(new Info("NA","22/02/2020","Florida"));
info.add(new Info("PA","22/01/2020","Florida"));
info.add(new Info("CA","22/03/2020","Florida"));
info.add(new Info("DA","22/04/2020","Florida"));
model.addAttribute("info",info);
return "page-thyme";
}
我的 Thymeleaf 页面看起来像。它一口气显示所有内容。我真的不明白在这里做什么。
<div th:each="info, status : ${info}">
<p th:text="${info.name}">
<p th:text="${info.dob}">
<p th:text="${info.university}">
</div>
编辑: 我添加了一个服务类
@GetMapping("/get/All-user-info/{departmentId}")
public String getAllUserInfo(Model model, @PathVariable String departmentId){
List<Info> info = userService.getUser(departmentId);
model.addAttribute("info",info);
return "page-thyme";
}
【问题讨论】:
-
我不认为这是一个 Thymeleaf 问题,本身 - 我认为这更像是一个 “如何在 Spring Boot 中实现分页? 问题。Thymeleaf 可以支持分页解决方案,但不提供这样的解决方案。我认为研究“Spring Boot 分页”可能是一个不错的起点。
标签: javascript java spring-boot thymeleaf