由于不知道如何在子页面获取到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);//需要手动关闭窗口 } });