使用Layer組件彈出多個對話框(非嵌套)與關閉及刷新的例子
頁面A中彈出頁面B,在頁面B中彈出頁面C,在layer做嵌套ifframe彈出時會遇到C頁面被嵌套在B頁面中,如果C尺寸大于B,則C將不能顯示完整。這個時候可以考慮B,C頁面均由A頁面彈出從而避免嵌套帶來的問題。廢話少說,直接上代碼。
1.A彈出B:
在A.html中插入一下代碼
layer.open({
title:'新增賬號',
type: 2,
area: ['700px', '350px'],
fixed: false, //不固定
maxmin: false,
content:['B.html?'+param,'no']
});
2.B彈出C:
在B.html中插入以下代碼
parent.layer.open({
type: 2,
skin: 'layui-layer-molv',
title: "組織機構選擇",
area: ['460px', '600px'],
shadeClose: false,
content: ['C.html','no'],
btn: ['確定','關閉'],
btn1: function (index) {
var subIframe=parent.$("iframe");
if(subIframe!=null&&subIframe.length==2){
var orgs= subIframe[1].contentWindow.getCMethod();
if(orgs&&orgs.length>0){
$("input[name='defaultOrgId']").val(orgs[0].orgId);
$("input[name='orgName']").val(orgs[0].orgName);
}
}
parent.layer.close(index);//關閉彈出層C.html
}
});
3.關閉iframe彈出層js代碼
(1)關閉特定iframe
//當在iframe頁面關閉自身時,在iframe頁執(zhí)行以下js腳本 var index = parent.layer.getFrameIndex(window.name); //先得到當前iframe層的索引 parent.layer.close(index); //再執(zhí)行關閉
(2)關閉所有彈出層
layer.closeAll(); //瘋狂模式,關閉所有層
layer.closeAll('dialog'); //關閉信息框
layer.closeAll('page'); //關閉所有頁面層
layer.closeAll('iframe'); //關閉所有的iframe層
layer.closeAll('loading'); //關閉加載層
layer.closeAll('tips'); //關閉所有的tips層
4.刷新另一個彈出層
(1)刷新已知index的iframe彈層
layer.iframeSrc(index, 'http://sentsin.com') //官方示例,其中參數index為iframe索引,第二個參數為iframe的URL
(2)刷新未知index的iframe彈層
parent.$("iframe").each(function () {
$(this).attr('src', $(this).attr('src'));//需要引用jquery
})
以上這篇使用Layer組件彈出多個對話框(非嵌套)與關閉及刷新的例子就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
TypeScript聯(lián)合類型,交叉類型和類型保護
這篇文章主要介紹了TypeScript聯(lián)合類型,交叉類型和類型保護,聯(lián)合類型就是定義一些類型,定義的變量只需要滿足任意一種類型即可,交叉類型就是需要滿足所有類型,交叉類型使用,更多內容我們來看看下面文章詳細內容吧2021-12-12
uniapp微信小程序訂閱消息發(fā)送服務通知超詳細教程
在使用或開發(fā)小程序過程中,我們會發(fā)現(xiàn)消息通知是非常重要的一個環(huán)節(jié),下面這篇文章主要給大家介紹了關于uniapp微信小程序訂閱消息發(fā)送服務通知的相關資料,需要的朋友可以參考下2023-06-06
.net MVC+Bootstrap下使用localResizeIMG上傳圖片
這篇文章主要為大家詳細介紹了.net MVC和Bootstrap下使用 localResizeIMG上傳圖片,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04

