layer示例ui
因爲不知道如何在子頁面獲取到layer定義的肯定按鈕,因而就在子頁面上定義了一個方法,而後在由父頁面在點肯定按鈕時調用子頁面所定義的這個方法,從而執行子頁面方法裏面的內容:this
子頁面代碼:spa
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獲取到這個方法中返回的idscode
父頁面代碼:cdn
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);//須要手動關閉窗口 } });