layer.open+iframe頁窗口=在父頁面利用 layer.open的yes按鈕回調函數調用iframe子頁面函數


父頁面

        function edit(data) {
            layer.open({
                type: 2,//0:信息框,默認1:頁面層2:iframe層3:加載層4:tips層
                area: ['650px', '620px'],
                fixed: false, //不固定
                shade: 'background-color: rgba(0,0,0,.5)',
                shadeClose: true,
                //maxmin: true,
                content: 'edit?d_id=' + data.d_id + '&' + 'a_name=' + data.a_name + '&' + 'a_id=' + data.a_id + '&' + 'd_name=' + data.d_name + '&' + 'd_status=' + data.d_status + '&' + 'd_parid=' + data.d_parid + '&' + 'd_level=' + data.d_level,
                btn: ['提交','返回'],
                yes: function (index, layero) {
                    var body = layer.getChildFrame('body', index);
                    var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe頁的窗口對象,執行iframe頁的方法:iframeWin.method();
                    iframeWin.Buttun_Submit();//執行iframe頁的方法:iframeWin.method();
                    window.location.reload();//直接頁面刷新
                    //console.log(body.html()) //得到iframe頁的body內容
                    //body.find('input').val('Hi,我是從父頁來的')
                },
                btn2:function (index, layero) {
                    layer.close(index); //如果設定了yes回調,需進行手工關閉
                },
                
            });
        }

子頁面

    function  Buttun_Submit() {
        var inputName = document.getElementById('selectname').value;//部門名稱(判空)
        var dId = d_id;//部門id
        var pId = document.getElementById('selectID').value;//上級部門id
        var aId = document.getElementById('AreaselectID').value;//所在地區id
        if (dId == pId) {
            layer.msg("上級部門選擇錯誤!");
        } else {
            $.ajax({
                url: "/sys_department/edit_detaile",//請求地址
                dataType: "json",//數據格式
                type: "POST",//請求方式
                async: false,//是否異步請求
                data: {
                    inputName: inputName,
                    dId: dId,
                    pId: pId,
                    aId: aId
                },
                success: function (data) {
                    layer.msg(data);
                    setTimeout(function () {
                        var index = parent.layer.getFrameIndex(window.name)
                        parent.layer.close(index);
                    }, 500);
                },
            });
        }
        
    }

借鑒文章:
https://fly.layui.com/jie/61122/
https://www.cnblogs.com/zhaow/p/9753836.html
https://www.layui.com/doc/modules/layer.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM