获取layer.open弹出层的返回值 jquery 弹出窗口

获取layer.open弹出层的返回值

Layer:如何调用layer.open打开的的iframe窗口中的JS?
layer.open({
type: 2,
content: ‘test/iframe.html’,
success: function(layero, index){
  var body = layer.getChildFrame(‘body’, index);
  var iframeWin = window[layero.find(‘iframe’)[0][‘name’]]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
  console.log(body.html()) //得到iframe页的body内容
  body.find(‘input’).val(‘Hi,我是从父页来的’)
}
}); 

 

如上面的代码所示,也就是可以使用iframeWin.method(); 来执行父页面上的JS方法,
iframeWin 是通过window[layero.find(‘iframe’)[0][‘name’]]来获取,其中要用到layero这个变量,它是通过success这个function传入,一直到这里都没有问题
但是问题来了,如果我想在页面的其它地方来用执行父页面或其它通过layer.open方法找开的子页面,又该怎么做呢?(毕竟其它地方至少是找不到layero这个变量的)

解决办法:

 parent.window[‘layui-layer1’ + index].window

或者

parent.window[‘layui-layer-iframe’ + index].window

    原文作者:zhangfeng1133
    原文地址: https://blog.csdn.net/zhangfeng1133/article/details/82899309
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞