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

layer 的基本API可参考;http://www.layui.com/doc/modules/layer.html


在项目开发中遇到使用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为层的索引。

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

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


Layer.open(

{

success:function(layero, index){

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

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

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

}

})

2 在子页面完成数据渲染

Layer.open(

{

success: function(layero, index){

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

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

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

iframeWin.method(pre);

}

})


  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值