如下所示:
1、這里的彈窗彈出來(lái)的是一個(gè)頁(yè)面,經(jīng)過(guò)了后臺(tái)才彈出來(lái)的一個(gè)頁(yè)面
1.1、彈窗的實(shí)現(xiàn)
1.1.1、 js 部分
function getArticleById(articleId){ var index = layer.open({ type: 2, title: '修改管理員', area: ['90%', '95%'], shade: 0.8, resize: false, fixed: false, move: false, shadeClose: false, content: '${ctxPath}/article/getArticleById?articleId='+articleId }); }
1.1.2、后臺(tái)Java部分
/** * 去到修改文章頁(yè)面 * */ @RequestMapping("/getArticleById") public String getArticleById(@RequestParam("articleId") Integer articleId,Model model) { MrtArticle mrtArticle = mrtArticleService.getArticleById(articleId); model.addAttribute("mrtArticle",mrtArticle); return "article/articleUpdate"; }
到這里也面就彈出來(lái)了
1.2、關(guān)閉該彈窗,在articleUpdate.jsp的JS部分用以下兩行代碼它就把自己關(guān)閉了
//當(dāng)你在iframe頁(yè)面關(guān)閉自身時(shí) var index = parent.layer.getFrameIndex(window.name); //先得到當(dāng)前iframe層的索引 parent.layer.close(index); //再執(zhí)行關(guān)閉 layer.alert('提交成功', { skin: 'layui-layer-molv' //樣式類名 自定義樣式 ,closeBtn: 1 // 是否顯示關(guān)閉按鈕 ,anim: 1 //動(dòng)畫(huà)類型 ,btn: ['確定'] //按鈕 ,icon: 6 // icon ,yes:function(){ //當(dāng)你在iframe頁(yè)面關(guān)閉自身時(shí) var index = parent.layer.getFrameIndex(window.name); //先得到當(dāng)前iframe層的索引 parent.layer.close(index); //再執(zhí)行關(guān)閉 } });
layer.close(index) - 關(guān)閉特定層
關(guān)于它似乎沒(méi)有太多介紹的必要,唯一讓你疑惑的,可能就是這個(gè)index了吧。事實(shí)上它非常容易得到。
//當(dāng)你想關(guān)閉當(dāng)前頁(yè)的某個(gè)層時(shí) var index = layer.open(); var index = layer.alert(); var index = layer.load(); var index = layer.tips(); //正如你看到的,每一種彈層調(diào)用方式,都會(huì)返回一個(gè)index layer.close(index); //此時(shí)你只需要把獲得的index,輕輕地賦予layer.close即可 //如果你想關(guān)閉最新彈出的層,直接獲取layer.index即可 layer.close(layer.index); //它獲取的始終是最新彈出的某個(gè)層,值是由layer內(nèi)部動(dòng)態(tài)遞增計(jì)算的 //當(dāng)你在iframe頁(yè)面關(guān)閉自身時(shí) var index = parent.layer.getFrameIndex(window.name); //先得到當(dāng)前iframe層的索引 parent.layer.close(index); //再執(zhí)行關(guān)閉 layer.closeAll(type) - 關(guān)閉所有層
如果你很懶,你不想去獲取index你只想關(guān)閉。那么closeAll真的可以幫上你。如果你不指向?qū)宇愋偷脑挘鼤?huì)銷(xiāo)毀掉當(dāng)前頁(yè)所有的layer層。當(dāng)然,如果你只想關(guān)閉某個(gè)類型的層,那么你可以
layer.closeAll(); //瘋狂模式,關(guān)閉所有層 layer.closeAll('dialog'); //關(guān)閉信息框 layer.closeAll('page'); //關(guān)閉所有頁(yè)面層 layer.closeAll('iframe'); //關(guān)閉所有的iframe層 layer.closeAll('loading'); //關(guān)閉加載層 layer.closeAll('tips'); //關(guān)閉所有的tips層
以上這篇解決layui-open關(guān)閉自身窗口的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com