springboot+thymeleaf写一个查询操作重新渲染界面
问题描述:接口返回的结果是数据已经发生了变化,但是浏览器当前界面显示没有发生改变
初始界面
最开始的源数据
执行查询操作之后的源数据
虽然返回的数据没有问题,但是界面不显示,网络请求是使用ajax,由于不是前后端分离,使用了Model的方法来存放数据并返回到界面
后端controller层方法
/**
* 获取所有任务列表
* 第一次进入任务管理界面调用该接口
* @param model
* @return
*/
@GetMapping("/getMissionList")
public String getMissionList(Model model) throws ParseException {
List<Mission> missionList = missionService.findAllMission();
model.addAttribute("missionList", missionList);
return "admin/mission";
}
//查询调用的接口,对界面上绑定id为table_fresh的div进行局部数据的刷新
@GetMapping("/selectMissionList")
public String selectMissionList(Model model,String startDate,String endDate) throws ParseException {
Mission mission = new Mission();
mission.setMissionStartTime(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss").parse(startDate+"T00:00:00"));
mission.setMissionEndTime(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss").parse(endDate+"T00:00:00"));
System.out.println(mission.getMissionStartTime());
List<Mission> missionList = missionService.selectMission(mission);
model.addAttribute("missionList", missionList);
return "admin/mission::table_fresh";
}
前端
<div th:fragment="table_fresh"
SpringBoot+Thymeleaf 实现查询后界面更新

本文介绍了在SpringBoot+Thymeleaf环境下,遇到查询操作后浏览器界面未实时更新的问题。问题表现为接口返回新数据,但界面显示仍为旧数据。尝试使用Ajax请求和Model存储数据,尽管数据处理正确,但在IE、系统默认及Chrome浏览器中,界面未刷新。考虑过浏览器缓存影响,并已在配置中设置`spring.thymeleaf.cache=false`,但问题未解决。最后通过调整后端和前端代码实现了在各浏览器上的兼容更新。
最低0.47元/天 解锁文章
2785

被折叠的 条评论
为什么被折叠?



