[不花钱站长]:从免费域名开始[0元] Oracle永久免费VPS[0元] VPS环境搭建免费脚本[0元] 秒变大盘挂载免费网盘[0元] 小白免费采集器1天500W[0元] CF免费DNS+CDN服务[0元]
[零基础网赚]:撸本站免费源码[0元] 网站强引免费蜘蛛法[0元] 图片视频文件免费存储[0元] 外链轻松发布免费友链[0元] 入坑免费教程学习源代码[0元] 网上百种+赚钱联盟推荐[?元]

↑↑VPS推荐网 WWW.VPS.COM.IN 稳定 便宜 免备案↑↑


您现在的位置是:首页 > 全球[VPS测评] >  永久免费VPS 香港VPS,国外永久免费VPS

layer 通过 parent.layer.open 打开的窗体向父窗体传值

全球[VPS测评]来源:VPS推荐网点击:1525
【性价之王】【线路之王】【价格之王】【配置之王】
【免费之王】【香港首推】【梯子之王】【独服之王】
layer 通过 parent.layer.open 打开的窗体向父窗体传值

在“layer 子窗体关闭后向父窗体传值的办法”一文中我们介绍了在 layer 子窗体向父窗体传值的办法。但是有的时候,我们需要实现layer 子窗体大于父窗体的效果,这种情况下我们的弹窗代码是 parent.layer.open 而不是 layer.open,这时篇头文章中的办法是无效的。那么要怎么实现 layer 子窗体大于父窗体并能通过子窗体向父窗体传值呢?具体方法如下:

假设有页面 A,B,C。其中 A 为主页面、B 为 A 中通过 layer.open 弹出的子窗体,C 为在 B 窗体中通过 parent.layer.open 弹出的子窗体,那么现在 C 窗体已经可以大于 B 窗体了,我们要解决的就是 C 窗体向 B 窗体传值,其实就是篇头文章的一种变通做法。

1.A 页面中定义回调函数:

function callback(id){     $('#layui-layer-iframe1').contents().find('#number').val(id); }

说明,layui-layer-iframe1 为通过审查代码获得的 layer.open 的 B 窗体 ID,经过反复查看确认不会变化,是固定值,这段代码的意思就是当回调函数执行时,将 B 窗体中 id 为 number 的文本框值设置为传过来的参数 id。

2.B 窗体中要接受传值的 html 代码:

<input type="text" class="form-control" id="number" name="number" value="">

3.C 窗体中的函数调用代码:

function select(id){     parent.callback(id);     var index = parent.layer.getFrameIndex(window.name);     parent.layer.close(index); }

说明:C 窗体中的回调代码,执行该函数后回调 A 页面中的函数 callback。

总结:其实就是要理解 layer 弹出层之间的关系,因为通过 parent.layer.open 的方式打开弹窗 C,所以实际上 C 弹窗的父页面是 A,因此执行回调函数要写到 A 中,然后再通过 A 的回调函数向 B 窗体中写入数据即可。



猜你可能想看的VPS


转载请注明原文地址:http://140.238.13.167:12355/read-204999.html

下一篇       上一篇