在layui中绑定数据,关闭弹窗之后再次打开的时候数据没有进行回显。数据表格会展示所有的数据。显然这不是我们想要的,自己在网上搜索并尝试了一下,有这样一种方法可以在弹窗页面关闭再次打开之后显示选中的记录,希望可以帮到大家。
原始的layui数据表格:
第一次打开选中记录关闭后再次打开:
显然数据没有进行回显
layui数据表格回显
首先要先判断数据表格是否选中过数据,这是我的操作(参考)
如果选中过了,就获取记录中的id或者名称都可以 。没有的话可以随意给一个值(主要是为了以后进行判断)
获取到值之后可以通过请求地址传递到后天(我的后台返回的是一个视图)
原请求地址:
更改过后:
后台可以使用@PathVariable进行接收
@RequestMapping(value = "/bloodManage/item/{item}/{bloodId}",method = RequestMethod.GET)
public String chooseItemView(HttpServletRequest request,@PathVariable String item,
@PathVariable String bloodId ,ModelMap mmap){
Assert.isTrue(ITEMS.contains(item),"未知的页面");
mmap.put("type",item);
mmap.put("id",bloodId);
return "html/dataAssetManage/blood/chooseItem";
}
然后可以在返回的视图上进行获取值
接下来就是在弹窗的js中去判断数据是否被选中过
根据判断可以给where的条件赋值
这是一段官方的解释:
就是说如果你不需要的话可以不设置。
根据这个我们可以想到如果数据没有被选中的话,那么我们可以不需要设置where,如果数据被选中的话我们可以设置where有参数,这样在打开弹窗的时候请求地址就会带有条件
结果:
选中记录:
再次打开:
希望能帮到大家。