layer父页面调用子页面的方法

由于不知道如何在子页面获取到layer定义的确定按钮,于是就在子页面上定义了一个方法,然后在由父页面在点确定按钮时调用子页面所定义的这个方法,从而执行子页面方法里面的内容:

子页面代码:

function test() {
            var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
            var ids= new Array();
            var i=0;
            $("input:checkbox[name='subBox']:checked").each(function() { // 遍历name=test的多选框
                ids[i++]=$(this).val();  // 每一个被选中项的值
            });
            return ids;
        }

  父页面通过调用这个test获取到这个方法中返回的ids

父页面代码:

layer.open({
            type: 2,
            title: '选择视频',
            area: ['800px' , '520px'],
//            fixed: false, //不固定
//            maxmin: true,
            skin: 'layui-layer-rim', //加上边框
//            shadeClose: true,
            content:'test.do',
			btn: ['确定', '取消'],
            yes: function(index, layero){
                var body = layer.getChildFrame('body', index);
                var iframeWin = window[layero.find('iframe')[0]['name']];//得到iframe页的窗口对象,执行iframe页的方法:
                var ids = iframeWin.test();//调用子页面的方法,得到子页面返回的ids
                $("#mediaPath").val(ids);
                layer.close(index);//需要手动关闭窗口
            }
        });

  

posted @ 2017-03-17 10:11  crud程序员  阅读(25368)  评论(0编辑  收藏  举报