关于刷新同级layer弹框的解决方法

在项目中遇到这种情况:

父页面点击详情,layer.open一个子页面A,子页面里面又存在操作按钮,点击使用parent.layer.open在打开一个子页面B,子页面B点击提交操作成功要刷新子页面A的内容(子页面A的内容是通过ajax请求获取的,也就是说要再调用子页面A的这个方法。)

简单点说就是子页面要调用同级子页面的方法。

我的思路:

子页面A 定义一个全局变量getInfo;getInfo 再赋值为获取ajax数据的一个function;

在父页面也定义个全局变量getSonInfo;使用layer.open里的success回调函数,将子页面A的getInfo方法赋给getSonInfo;

var layerAdd = layer.open({
            title: "检修详情",
            content: content,
            area: ["930px", "90%"],
            type: 2,
            success: function(layero, index) {
                getSonInfo = $(layero).find("iframe")[0].contentWindow.getInfo;
                }
            });

子页面B调用parent.getSonInfo()就可以刷新子页面A的数据了。

总结,因为项目比较着急,就照着自己的思路往下走了,可能有些绕,也百度了查到了父页面下兄弟子页面互相传值调用的方法,但是目前来说功能算是实现了,等项目不忙的时候再研究更加效率直接的方法。

扫描二维码关注公众号,回复: 1579793 查看本文章

猜你喜欢

转载自www.cnblogs.com/guan905883/p/9176210.html