记一次解决layui 的bug - layer.open 与 layui渲染问题

Posted 贝尔塔猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记一次解决layui 的bug - layer.open 与 layui渲染问题相关的知识,希望对你有一定的参考价值。

场景是这样的,通过layer打开一个弹窗,里面放置一个表单,表单是用layui来渲染的。

当弹窗完成之后,我需要渲染表单中的一些内容、譬如laydate。

layer.open({
        type: 1,
        title: "新增产品系列",
        content: $("#add_div").html(),
        btn: [‘保存‘, ‘取消‘],
        success: function (layero, index) {
            laydate.render({
                elem: ‘#date‘
            });
        }
});

表单的模板如下:

<div id="add_div" class="hide">
    ...
</div>

然而发现各种各样的问题。尤其是laydate,后来才发现,这是因为渲染了两次导致的。

页面的div虽然隐藏了,但终究还是渲染了。而layer.open的时候又渲染出了一套。导致冲突,解决方法是将模板改为script即可

<script type="text/template" id="add_div">
   // ...
</script>

 

以上是关于记一次解决layui 的bug - layer.open 与 layui渲染问题的主要内容,如果未能解决你的问题,请参考以下文章

记一次layui后台排序

[debug]记一次竞态更新bug的解决

记一次viewui框架的一个bug

记一次viewui框架的一个bug

记一次Kafka消费者频繁分区再均衡bug解决

记一次因 Redis 使用不当导致应用卡死 bug 的排查及解决!