layui框架彈出層關(guān)閉和刷新問題的解決方法

這篇文章將為大家詳細講解有關(guān)layui框架彈出層關(guān)閉和刷新問題的解決方法,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站建設、網(wǎng)站建設與策劃設計,余干網(wǎng)站建設哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設十年,網(wǎng)設計領(lǐng)域的專業(yè)建站公司;建站業(yè)務涵蓋:余干等地區(qū)。余干做網(wǎng)站價格咨詢:18982081108

layui框架是一款采用自身模塊規(guī)范編寫的前端UI框架,遵循原生HTML/CSS/JS的書寫與組織形式,

描述:

主頁面,彈出第一個彈框,第一個彈框中在彈出第二個彈框,如圖:

layui框架彈出層關(guān)閉和刷新問題的解決方法

1是主頁面,2是子彈窗,3是孫彈窗

功能一:好了,第一個我要實現(xiàn)的功能是點擊彈窗3的確定之后關(guān)閉彈窗3

上js代碼,先貼出如何在主頁面1中彈出彈窗2的代碼:

//彈窗2(代碼寫在主頁面1)
function edit() {

var index = layer.open({//占坑?。?!
            type : 2,
            title : "預算目標編輯",
            content : "/xx/xx/xx/edit?year=" + year
                    + "&departmentCode=" + departmentCode,
            area : [ "90%", "90%" ],
        });

}

接著貼出如何在彈窗2中彈出彈窗3的:

//彈窗3(js代碼寫在彈窗2中)

function configuration(){
    parent.layer.open({//占坑!
        type: 2,
        title: "配置項目",
        content: "/xx/xx/xx/xx?budgetMainCode="+budgetMainCode,
        area: ["80%", "80%"],
        end: function () {//點睛之筆,此端代碼便是精髓之處,layui監(jiān)聽到彈窗3的銷毀之后回調(diào)了一個end函數(shù),通過這個end函數(shù)我們就能刷新彈窗2的數(shù)據(jù)
            refreshTable()//就比如這refreshTable()是彈窗2里面的用于拼接數(shù)據(jù)列表的函數(shù)
} }); }
//確定(代碼寫在彈窗3中)
//彈窗3中的js代碼,就是最上面那個圖中的確定按鈕的函數(shù)

function comfirm(){
     //獲取checkbox[name='check']的值
     var arr = new Array();
     $("input:checkbox[name='check']:checked").each(function(i){
           arr[i] = $(this).val();
     });   
    $.ajax({
        type: "post",
        dataType: 'json',
        url: "/xx/xx/xx/checkChoise?budgetMainCode="+budgetMainCode,
        contentType: 'application/json',
        data: JSON.stringify(arr),
        success: function (result) {//點擊確定按鈕之后,后臺業(yè)務代碼出來成功之后的回調(diào)
            if (result.status == 0) {
                parent.layer.close(parent.layer.index);//根據(jù)前面怎么彈出彈窗來選擇索引去關(guān)閉彈窗,比如前面彈窗3是通過parent.layer.open彈出來的,
                                    那么我就獲取它的索引,并將它關(guān)閉,占坑?。?!
            }
            if (result.message != null) {
                layer.msg(result.message)
            }
        },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            layer.msg('{"status":"' + XMLHttpRequest.status + '","readyState":"' + XMLHttpRequest.readyState + '","textStatus":"' + textStatus + '","errorThrown":"' + errorThrown + '"}')
        }
    })
}

功能二:

需求是點擊彈窗3的某一條數(shù)據(jù)的“項目模板”然后選好該條模板在后臺把這條模板插入到另外一個表里面

,這里面的另外一個表指的是彈窗2中的一個數(shù)據(jù)表格。彈窗2的數(shù)據(jù)表格在彈窗3關(guān)閉的瞬間然后插入一條新的數(shù)據(jù),此時彈窗2的那個數(shù)據(jù)表格肯定要立馬刷新

//彈窗3(js代碼寫在彈窗2中)

function configuration(){
    parent.layer.open({//占坑!
        type: 2,
        title: "配置項目",
        content: "/xx/xx/xx/xx?budgetMainCode="+budgetMainCode,
        area: ["80%", "80%"],
        end: function () {//點睛之筆,此端代碼便是精髓之處,layui監(jiān)聽到彈窗3的銷毀(窗口關(guān)閉)之后回調(diào)了一個end函數(shù),通過這個end函數(shù)我們就能刷新彈窗2的數(shù)據(jù)
            refreshTable()//就比如這refreshTable()是彈窗2里面的用于拼接數(shù)據(jù)列表的函數(shù)
} }); }

如圖彈窗2:

layui框架彈出層關(guān)閉和刷新問題的解決方法確定之后選擇了這條模板數(shù)據(jù),同時關(guān)閉彈窗3,效果如圖:

layui框架彈出層關(guān)閉和刷新問題的解決方法

關(guān)于layui框架彈出層關(guān)閉和刷新問題的解決方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

分享名稱:layui框架彈出層關(guān)閉和刷新問題的解決方法
URL網(wǎng)址:http://bm7419.com/article30/pccspo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、品牌網(wǎng)站制作、營銷型網(wǎng)站建設、建站公司、品牌網(wǎng)站設計服務器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設