layui的iframe父子操作方法


背景:layui 通過調用 open方法,type:2,打開iframe彈窗

  

  注意:以下方法使用需在服務上運行,否則會出現以下報錯,導致方法失效

 

 

 

  需求1:點擊關閉彈窗時,父頁面獲取彈窗內的dom元素

1 //在關閉彈窗時,獲取彈窗內的dom元素
2 cancel: function (index, layero) {
3           var form = $(layero).find("iframe")    
4           [0].contentWindow.document.getElementById("dom元素id")
5           console.log(form)
6         }    

 

  需求2:在父頁面調用彈窗內的的方法

1 // 點擊關閉彈窗時,在回調函數中調用iframe內的方法
2 cancel: function (index, layero) {
3           window[layero.find('iframe')[0]['name']].test();
4         }

 

  需求3:在彈窗內調用父頁面的方法

      注:此情況為調用的方法在layui.use內;如果方法暴露在外面,那么在彈窗內可通過 window.add(1,2) 調用

// 彈窗內調用父級頁面內的方法

 // 父級頁面的方法示例
layui.use(['jquery', 'layer'], function () {
      var $ = layui.$, //重點處
        layer = layui.layer;
      
      var add = function (x, y) {
        return x + y;
      }
      window.add = add;
    });


//彈窗內調用方法示例
window.parent.add(1,2);

 


免責聲明!

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



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