layer.js子窗口关闭并传数据到父窗的方法

Posted 雪原日暮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了layer.js子窗口关闭并传数据到父窗的方法相关的知识,希望对你有一定的参考价值。

昨晚整了很晚,一直找不到方法。去官网api看了好久,又在网上搜了很久 始终找不到答案。今天自己终于找到了方法。

难点:因为 确认和取消按钮都是在父窗 调用js生成的按钮。只能从父窗回调的时候去去数据并关闭子窗口。并不是子窗口自己关闭并把数据传到父窗。而网上给出的很多答案都是子窗口自己关闭并传数据到父窗的方法。

【贴出我自己的代码,大概实现了流程。具体自己根据情况修改】

我的代码功能是 子窗口要传递数组给父窗,具体复杂的数据格式(如json等)类似

1.子窗口代码

   var urls;
    function getUrls()
    {
        return urls;
    }

  将变量的值用方法传出来

2.父窗的代码

 function OpenWindow()
    {
        top.layer.open({
            id: "UploadPic",
            title: "图片上传",
            content: "/Actor/UploadPic",
            area: ["800px", "580px"],
            shade: 0.3,
            type: 2,
            fix: false,
            btn: [‘确认‘, ‘关闭‘],
            btnclass: [‘btn btn-primary‘, ‘btn btn-danger‘],
            yes: function (index, layero) {
                var tem = $(layero).find("iframe")[0].contentWindow.getUrls();
                PicCallBack(tem);
                parent.layer.close(index);
            }, cancel: function () {
                return true;
            }
        });
    }

  调子窗口的方法 取到数据,并关闭子窗口

 

3.

PicCallBack方法是父窗口的方法,参数是从子窗口传过来的数据,具体方法就不写了、
大概流程就是这样

以上是关于layer.js子窗口关闭并传数据到父窗的方法的主要内容,如果未能解决你的问题,请参考以下文章

showModalDialog/showModelessDialog实例,父窗口向子窗口传递值,子窗口设置父窗口的值,子窗口关闭的时候返回值到父窗口.关闭刷新父窗口

在不关闭子窗口的情况下从子窗口返回焦点到父窗口(在mfc visual studio中)

JS中关闭弹窗的问题

window.open()打开一个子窗口,怎么实现在子窗口选择数据,然后提交把数据加到父窗口。

layer 打开关闭弹出窗口与获取父窗口值

layer.js 注册登录切换的问题