Springboot页面跳转时后台往前台传递list
编程小白,记录一下自己学习过程中解决的问题。
需求:目前在写一个影院票务系统,现在要实现点击电影场次后跳转到选座位的页面,页面上要能显示当前场次的座位预订情况。
分析:通过点击页面A中的按钮跳转到页面B,期间前台要往后台传一个场次id,后台根据id查询出一个座位list再传回前台,前台再根据list中的数据对网页元素进行渲染。
Controller
代码
@RequestMapping(value = "/toBook2")//页面跳转
public String toBook2(HttpSession session){
User user = (User)session.getAttribute("login");
if(user==null){//判断当前是否为登录状态
return "redirect:/testpage";
}else {
return "book2";
}
}
@RequestMapping(value = "/getSet")//获取座位list
@ResponseBody//注解会往前台返回一个JSON串,因此前台js中不需要eval()或JSON.parse了,不然会报错,这是一个坑
public List<Set> getSet(@RequestParam(value="scheduleId") String scheduleId){
//接收场次id
List<Set> list = scheduleService.findSetsByScheduleId(scheduleId);
//查询座位表
return list;
}
前台javascript
代码
window.onload = function(){//在页面加载时用ajax获取座位表
var scheduleId = $.getUrlParam('scheduleId');
//这是一个自定义函数,通过正则表达式获取url中的场次id参数
$.post("/getSet?scheduleId="+scheduleId,function (data) {
for(var i=0;i<data.length;i++){
alert(data[i].setCode);//打印获取的座位号
}
});
接收到数据了!
接下来就是把写好的前端代码整合一下,功能就实现了!