首頁 > web前端 > js教程 > 主體

layer.js之父子頁面實例詳解

韦小宝
發布: 2018-03-12 10:03:06
原創
1837 人瀏覽過

本文主要和大家分享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<span style="font-size: 18px;"></span>如何找到父頁面方法

#父親頁面–

function aa() {
    var index = parent.layer.getFrameIndex(window.name);
    var iframeName = &#39;layui-layer-iframe&#39; + index;
    openDialog1(&#39;选择XXX&#39;, &#39;${ctx}/*****,&#39;800px &#39;, &#39;500px &#39;,iframeName);      
    }  &#39;
登入後複製
function openDialog1(title, url, width, height, target) {
    top.layer.open({
        type: 2,
        area: [width, height],
        title: title,
        maxmin: true,
        //开启最大化最小化按钮  
        content: url,
        btn: [&#39;确定&#39;, &#39;关闭&#39;],
        yes: function(index, layero) {
            var body = top.layer.getChildFrame(&#39;body&#39;, index);
            var iframeWin = layero.find(&#39;iframe&#39;)[0]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();  
            var inputForm = body.find(&#39;#inputForm&#39;);
            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(&#39;请至少选择一条数据!&#39;, {
            icon: 0,
            title: &#39;警告&#39;
        });        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中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板