天天看点

layer组件打开新弹层通过view(this.id).render传参

当我们使用编辑等功能时,有时候需要打开弹出层,layer是一款web弹层组件

layer.open({
    title: '用户编辑'
    ,type:1
    , area: ['1150px', '650px']
    , skin: 'layui-layer-rim'
    , id: 'contractlist-edit'
    , btn: ['保存', '取消']
    , success: function (layero, index) {
        view(this.id).render('contract/contract_edit',{id:id})
        console.log(id)
    }
    , yes: function (index, layero) {
        $('#save').click();
        
    }
})
           

layer提供了5种层类型。可传入的值有:0(信息框,默认)1(页面层)2(iframe层)3(加载层)4(tips层)。 若你采用layer.open({type: 1})方式调用,则type为必填项(信息框除外)

通过view(this.id).render来打开新弹窗以及传递参数

新页面如何接收参数?

<script type="text/html" template lay-done="layui.data.sendParams(d.params)">

</script>
<script>
    //定义一个 lay-done 对应的全局方法,以供动态模板执行
    layui.data.sendParams = function (params) {
        contractId = params.id;
    };
    setTimeout(function () {
        layui.use(['contract_edit'], layui.factory('contract_edit'));
    }, 10)
</script>