2048
登录
没  有  难  学  的  前  端
登 录
×
<返回上一级

layui给layer弹出层如何传值?

javascript作者:猿2048志愿者

使用layui框架时,在点击表格中的按钮时,显示当前行的信息至layer弹出层.

clipboard.png

在点击查看或者编辑按钮时,会有一个弹出框
我这里用的是layui的外链页面的形式引入的页面

clipboard.png

这种方式,引入页面后,浏览器加载,直接将这个外链的弹窗解释称iframe了

clipboard.png

现在我需要将点击的那一行的每个信息展示在弹窗中,这就涉及到传参

之前有看layui的文档,layer.getChildFrame(selector, index) 这个方法有用过,但是效果没有出来,也查了相关资料,发现写的都差不多,不知道哪儿出了问题。望大神予以解答。
这是官方文档的处理方式:

layer.open({
  type: 2,
  content: 'test/iframe.html',
  success: function(layero, index){
    var body = layer.getChildFrame('body', index);
    var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
    console.log(body.html()) //得到iframe页的body内容
    body.find('input').val('Hi,我是从父页来的')
  }
});

下面是我写的:

layui.use(['layer', 'form'], function(){ //独立版的layer无需执行这一句
    var $ = layui.jquery, layer = layui.layer, form = layui.form; //独立版的layer无需执行这一句
        layer.open({
            type: 2
            ,title: ['查看信息'] //不显示标题栏
            ,closeBtn: 1
            ,area: ['400px', '500px']
            ,shade: 0.4
            ,id: 'LAY_layuipro7' //设定一个id,防止重复弹出
            ,btn: ['确定']
            ,btnAlign: 'c'
            ,moveType: 1 //拖拽模式,0或者1
            ,content:'../../../html/iframes/company/check-layer.html'
            ,success:function(layero, index){
            var body = layer.getChildFrame('body', index);
            var iframeWin = window[layero.find('iframe')[0]['name']]; 
            body.find('.personId').val(data.id)
            body.find('.personName').val(data.name)
            body.find('.sex').val(data.sex)
            body.find('.city').val(data.city)
            body.find('.sign').val(data.sign)
            body.find('.score').val(data.score)
        }
    })
})
评论
点击刷新
评论
相关问题
×添加代码片段