首页 > web前端 > js教程 > 正文

layer.js之父子页面实例详解

韦小宝
发布: 2018-03-12 10:03:06
原创
2135人浏览过

本文主要和大家分享layer.js之父子页面实例,关于父子页面的知识我们可能有所了解,希望本文能帮助大家更加掌握layer.js之父子页面。

layer是一款近年来备受青睐的web弹层组件,官网地址是:http://layer.layui.com/

可以从官网上下载最新版本。

当layer以iframe层的方式弹出新的窗口(子页面),如何在子页面中访问父页面的元素和函数

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.js弹出多个iframe如何找到父页面方法

父亲页面–

function aa() {
    var index = parent.layer.getFrameIndex(window.name);
    var iframeName = 'layui-layer-iframe' + index;
    openDialog1('选择XXX', '${ctx}/*****,'800px ', '500px ',iframeName);      
    }  '
登录后复制
function openDialog1(title, url, width, height, target) {
    top.layer.open({
        type: 2,
        area: [width, height],
        title: title,
        maxmin: true,
        //开启最大化最小化按钮  
        content: url,
        btn: ['确定', '关闭'],
        yes: function(index, layero) {
            var body = top.layer.getChildFrame('body', index);
            var iframeWin = layero.find('iframe')[0]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();  
            var inputForm = body.find('#inputForm');
            var top_iframe;
            if (target) {
                top_iframe = target; //如果指定了iframe,则在改frame中跳转  
            } else {
                top_iframe = top.getActiveTab().attr("name"); //获取当前active的tab的iframe   
            }
            inputForm.attr("target", top_iframe); //表单提交成功后,从服务器返回的url在当前tab中展示  
            if (iframeWin.contentWindow.doSubmit(top_iframe)) {
                top.layer.close(index); //关闭对话框。  

                top.window[iframeName].frames.location.reload(); //刷新父亲  
            }

        },
        cancel: function(index) {}
    });

}
登录后复制
    //子页面回调方法     
    function addRecord(name,chainName)
    {  
        alert(name);  
    }
登录后复制

子页面

function doSubmit(iframeName) {
    var sel = $("tbody tr td input.i-checks:checked");    var size = sel.size();    if (size == 0) {
        top.layer.alert('请至少选择一条数据!', {
            icon: 0,
            title: '警告'
        });        return false;
    } else {        for (var i = 0; i < size; i++) {
            top.window[iframeName].addRecord(sel[i].name, sel[i].value);
        }        return true;
    }
}
登录后复制

  以上就是本篇文章的内容,大家对layer不熟悉的同学可以看看哦!

相关推荐:

layer子层给父层页面元素赋值实例讲解

以上就是layer.js之父子页面实例详解的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号