关于layui的日期和时间组件laydate闪屏的坑

在进行获取时间时,不知各位有没有遇到这样的坑,就是在使用layui.laydate组件时会出现闪屏的问题。网上的教法乱七八糟,我找了好久也没有找到解决的方法,最后只能灰溜溜地回看layui.laydate组件文档。(基于layui2.4.3版本的)
最基础就是以下的方法实现日期时间的显示,这个页面上不会出现闪屏立刻自动关闭的问题.

jsp页面:
    
    
    js代码:
    layui.use(['form','laydate'],function(){
    laydate.render({
            elem:'#id'
            ,format:'yyyy-MM-dd'
            ,max:'2099-06-16'
            ,min:'1980-01-01'
        });
    });

以上写法在页面上没有出现闪屏立刻关闭的问题。可是在弹框实现时这种方法就有问题了,首次弹出框显示,闪屏以下然后就拜拜了。后来我换了以下这种方法就解决了这个问题:

jsp页面:
    
(注意:class必须添加 test-item样式 这是重点,具体去看layui文档)

js代码:
layui.use('laydate', function(){
    var laydate = layui.laydate;
    //同时绑定多个
    lay('.test-item').each(function(){
        laydate.render({
            elem: this
            ,format:'yyyy-MM-dd HH:mm:ss'
            ,type:'datetime'
            ,trigger: 'click'
        });
    });
});

如果同一个弹框中存在多个这样的日期输入框则直接在页面依样画葫芦就行。

问题是解决了,可是我还是存在一个疑问,就是why?为什么这样做就可以实现了。两种方法区别是?问题解决了,我继续苦逼找文档资料去。欢迎大家知道原因的也可以相受,一起多多讨论.

你可能感兴趣的:(layui)