最近做一個后台管理系統,用到的layui,主要是使用它的彈層,但是各個彈層之前的傳值經常容易搞暈,寫個個博客記錄一下,方便自己,也方便別人,
首先我的頁面已經嵌套了好幾個iframe頁面了,嵌套了三個吧,然后在第三個打開一個彈層,需要用到top.layer打開,用top之后,打開的那個彈層就位於主頁上打開了(f12查看),和第三層頁面不再是父子關系了.所以想在打開的彈出層頁面獲取第三個iframe的DOM就必須先獲取到第三層的DOM.百度了好久,使用的方法就是在主頁上定義一個變量,保存第三層的DOM
主頁上的js
var config = { }
當打開第三個iframe的頁面時,把第三層的document保存到主頁上的config變量
// 第三個iframe頁面的js
top.config.thirdIframe = window.document
然后在彈層頁面,想要把值傳到第三個iframe頁面,得這么做
var thirdDocuemt = top.config.thirdIframe // 獲取保存的第三個iframe的document
$('選擇器',thirdDocuemt).text('要傳的值');
簡圖