Layui关闭弹窗返回值的两种方式(二)

二、操作弹窗打开的子页面返回值

        场景:此处小编的场景是操作ztree树,其实和操作列表都是一样的。通过点击增加按钮弹窗选择树节点,关闭窗口返回值

1、先说子页面

1-1、html代码

        在body中只需要加以下一句话就可以啦,

<ul id="treeDemo2" class="ztree larry-ztree-demo2" style="margin-left:20px;"></ul>

1-2、js代码

        要在js代码中加上返回的方法,以供父页面调用就OK了

function callbackdata() {
    var flag = true;
    f();
    if(resList.length>0){

    }else{
        flag = false;
        layer.msg("请至少选择一个节点")
    }
    var data = {resList : resList,
        flag : flag
    };
    return data;
}

2、再说父页面

2-1、js页面

        html页面就不多说了,就一个按钮。如下代码中,使用var res = window["layui-layer-iframe" + index].callbackdata();锁定子页面内的方法,即可拿到返回值啦。

add_undertaker: function() {
    var tit = '办案人员信息';
    var url = '../../commonbsp/personalizedbsp/tree.html?type=select';
    var index = larryms.open({
        title: tit,
        type: 2,
        shadeClose: false,
        area: ['380px', '405px'],
        content: url,
        btn: ['确定','关闭'],
        yes: function(index){
            //当点击‘确定'按钮的时候,获取弹出层返回的值
            var res = window["layui-layer-iframe" + index].callbackdata();
            //打印返回的值,看是否有我们想返回的值。
            var flag = res.flag;
            if(flag){
                //保存信息
                var json = JSON.stringify({"caseId":caseId,"items":res.resList});
                var url = dataportal_save_tree_selectors;
                $.ajax({
                    url: url,
                    async: false,
                    type: "post",
                    contentType: "application/json",
                    dataType: "json",
                    data: json,
                    success: function (data) {
                        //局部刷新表格
                        table.reload("message_undertaker");
                        //弹窗
                        layer.msg("保存成功!");
                    },
                    error: function (data, textstatus) {
                        layer.msg("保存失败!");
                    }
                });
                //最后关闭弹出层
                layer.close(index);
            }

        },
        cancel: function(){
            //右上角关闭回调
        }
    });

}

        以上就是两种方法的所有内容总结啦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值