由於不知道如何在子頁面獲取到layer定義的確定按鈕,於是就在子頁面上定義了一個方法,然後在由父頁面在點確定按鈕時調用子頁面所定義的這個方法,從而執行子頁面方法裏面的內容:
子頁面代碼:
1
2
3
4
5
6
7
8
9
|
function
test() { var
index = parent.layer.getFrameIndex(window.name); //獲取窗口索引 var
ids= new Array(); var
i= 0 ; $( "input:checkbox[name='subBox']:checked" ).each(function()
{ //
遍歷name=test的多選框 ids[i++]=$( this ).val(); //
每一個被選中項的值 }); return ids; } |
父頁面通過調用這個test獲取到這個方法中返回的ids
父頁面代碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
layer.open({ type: 2 , title: '選擇視頻' , area:
[ '800px' , '520px' ], //
fixed: false, //不固定 //
maxmin: true, skin: 'layui-layer-rim' , //加上邊框 //
shadeClose: true, content: 'test.do' , btn:
[ '確定' , '取消' ], yes:
function(index, layero){ var
body = layer.getChildFrame( 'body' ,
index); var
iframeWin = window[layero.find( 'iframe' )[ 0 ][ 'name' ]]; //得到iframe頁的窗口對象,執行iframe頁的方法: var
ids = iframeWin.test(); //調用子頁面的方法,得到子頁面返回的ids $( "#mediaPath" ).val(ids); layer.close(index); //需要手動關閉窗口 } }); |