1.方式一:父页面监听
父页面中:
//此处省略新窗口的设置参数
var win = window.open("url", "name", "features");
var loop = setInterval(function () {
if (win.closed) {
clearInterval(loop);
//执行回调方法
//method(...);
}, 800);//监听的固定时间间隔
子页面中:
window.close();
2.方式二:子页面直接调用父页面方法
父页面中:(写子页面要调用的方法)
eg:子页面关闭刷新父页面数据
function doLoad(yhxm, yhbm) {
//此处数据暂未二次编码
var param = "yhbm=" + yhbm
+ "&yhxm=" + yhxm;
//发送ajax请求重新加载页面
$.ajax({
url: "",
type: "post",
data: param,
dataType: "json",
success: function (rsp) {
//后台rsp.data中返回替换表格的html片段
if (rsp.status == "success") {
$("#tbody").html(rsp.data);
} else {
alert(rsp.message)
}
},
error: function () {
//错误处理
}
});
}
子页面中:
//其中yhxm,yhbm为子页面中取值完成并传递给父页面的参数
//doLoad()为父页面方法
window.opener.doLoad(yhxm, yhbm);
window.close();
本文地址:https://blog.csdn.net/weixin_43297055/article/details/107366485