首页 >  帮助中心 > layer弹出层父子层之间的操作

layer弹出层父子层之间的操作

来源:网络 点击量(30) 发布时间:2020-11-11

在项目开发中遇到使用layer弹出层包裹其他页面的进行修改密码的需求,在修改密码后,后续页面在弹出层中展示,为了解决这一问题,进行记录。首先明确一点,layer的一个重要参数 index,标示当前层的索引。


一 layer父子层之间的操作

1 访问页面的元素值

var parentId=parent.$("#id").val();//访问父页面元素值

2、访问父页面方放

var parentMethodValue=parent.getMethodValue();//访问父页面方法 

3 关闭弹出层的子页面窗口

var index = parent.layer.getFrameIndex(window.name); //获取窗口索引 

parent.layer.close(index);//关闭弹出的子页面窗口

4 在子页面刷新父页面

parent.location.reload(); // 父页面刷新 


二 父子层之间传值,传参

父子层之间传值传参的核心方法为:

layer.getChildFrame(selector, index) - 获取iframe页的DOM

其中,selectoriframe页面的选择器,用来选中iframe页面的元素。Index为层的索引。

在父页面上完成对子页面的数据渲染

layer弹出层成功够,会回调success方法,重写该方法即可实现对子页面的数据渲染。


Layer.open(

{

success:function(layero, index){

Var body = layer.getChildFrame(“body”,index);//绑定父子之间的关系,用于数据传递,缺少则无法传递

var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe页的窗口对象

//获取子页面的元素,进行数据渲染

}

})

在子页面完成数据渲染

Layer.open(

{

success: function(layero, index){

Var body = layer.getChildFrame(“body”,index);//绑定父子之间的关系,用于数据传递,缺少则无法传递

var iframeWin = window[layero.find('iframe')[0]['name']];//得到iframe页的窗口对象

//调用子页面的方法,将父页面的值作为参数传递过去

iframeWin.method(pre);

}

})


  • 服务热线   15915727750