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

本文详细介绍了在使用layui框架的layer组件时,如何在父子层间进行元素值访问、方法调用、窗口关闭及页面刷新等操作。同时,深入探讨了通过layer.getChildFrame方法在父子页面间传值和数据渲染的具体实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

其中,selector为iframe页面的选择器,用来选中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);

}

})
--------------------- 
作者:a669277756 
来源:优快云 
原文:https://blog.youkuaiyun.com/a669277756/article/details/78741804 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值