layui type:2 iframe子页面向父页面传值

需求:

选择子页面表格中的radio或者双击该行,得到的该行数据传到父页面,由父页面渲染。

网上的各种方法都用了,父页面就是获取不到子页面传的值,过了一晚上,睡了一觉,柳暗花明又一村。

layui type:2 iframe子页面向父页面传值:
parent.objjson = obj.data  //核心重点

可以直接给父页面赋值,layui.use里获取

html
<table class="layui-hide" id="test" lay-filter="test"></table>
父页面layui.use(在iframe弹框之后的代码里)
//全局变量
var objjson={}
layui.use('form', function (form) {
    form.render()
    function getobjjson() {
        console.log("json运行")
        console.log(objjson)
    }
    window.getobjjson = function () { //将方法添加到window,否则报错
        getobjjson()
    }
});
子页面给父页面的变量赋值,调用父页面方法
//单选框被选择的时候调用
table.on('radio(test)', function (obj) {
   console.log(obj.checked); //当前是否选中状态
   console.log(obj.data); //选中行的相关数据,json格式
   parent.objjson = obj.data  //给父页面的变量赋值,核心重点
   parent.getobjjson()  //调用父页面的方法
   parent.layer.closeAll()  //关闭父页面所有弹框
   
});
posted @ 2020-09-08 10:02  夏目的三三  阅读(1043)  评论(0编辑  收藏  举报