layui在弹出层显示laydate不能弹出,或者一闪而过的解决办法

这篇博客介绍了在 layui 框架中使用 laydate 组件时,如何解决日期时间选择器点击无效或闪烁的问题。在添加和编辑功能中,通过重置表单并正确调用 laydate 渲染元素,确保弹窗打开时日期和时间选择器正常显示。示例代码展示了添加和编辑操作的完整流程。
摘要由CSDN通过智能技术生成

在弹出层使用layui.laydate,一般会出现点击无效,不弹出,或者一闪而过,切换页面才会显示的问题,正确实现代码是:

add: function () {
                    $("#isNew").val(1);

                    $('#myForm')[0].reset();
                    form.render();
                    layer.open({
                        type: 1
                        , title: '添加'
                        , content: $('#inputInfo')
                        , maxmin: true
                        , area: ['60%','80%'],
                        success: function(layero, index){

                            layui.use('laydate', function() {
                                var laydate = layui.laydate;
                                  laydate.render({elem: '#startDate', type: 'date', trigger: 'click', range: false,});
                                  laydate.render({elem: '#startTime', type: 'time', trigger: 'click', range: false,});
                                  laydate.render({elem: '#endTime', type: 'time', trigger: 'click', range: false,});
                            });
                        }
                    });

                }

在open之前,先reset,然后 $(’#myForm’)是对应的弹出层

  <form class="layui-form layui-form-wd120" lay-filter="myForm" id="myForm">

add是添加方法

 <button class="layui-btn btn-action" data-type="add">
                        <i class="layui-icon layui-icon-addition layuiadmin-button-btn"></i> 添加
                    </button>

如果是编辑,写成这样

  function edit(aData) {
                form.val('myForm', aData);

                layer.open({
                    type: 1
                    , title: '编辑'
                    , content: $('#inputInfo')
                    , maxmin: true
                    ,area: ['60%','80%'],
                    success: function(layero, index){

                        layui.use('laydate', function() {
                            var laydate = layui.laydate;
                            laydate.render({elem: '#startDate', type: 'date', trigger: 'click', range: false,});
                            laydate.render({elem: '#startTime', type: 'time', trigger: 'click', range: false,});
                            laydate.render({elem: '#endTime', type: 'time', trigger: 'click', range: false,});
                        });
                    }
                });
                form.render();
            }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值