https://www.jb51.net/article/128275.htm
方法一:在layer弹出层中调用父界面重新加载函数
window.parent.location.reload();
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
方法二:
调用layer插件的end回调方法:
end - 层销毁后触发的回调
类型:Function,默认:null
无论是确认还是取消,只要层被销毁了,end都会执行,不携带任何参数。
父窗口打开layer弹出框时,添加end回调
function openLayer() {
//iframe层
parent.layer.open({
type: 2,
title: '修改',
shadeClose: false, //点击遮罩关闭
shade: 0.8,
area: ['30%', '45%'],
maxmin: true,
closeBtn: 1,
content: [url, 'yes'], //iframe的url,yes是否有滚动条
end: function () {
location.reload();
}
});
相比较而言,第一种方案会更佳,因为在操作逻辑上,手动关闭弹出框,应该不触发刷新操作,只有当弹出框的处理逻辑执行成功后,调用函数关闭弹出框才触发父界面刷新操作,基于这个逻辑,应该选择方案一。方案二,不管怎样都会刷新页面,实际上无端的增加了服务器的处理压力。
parent.layui.table.reload('LAY-app-content-list'); //重载表格 接口请求表格重新加载
网友评论