无法销毁引导日期时间选择器-(无法读取未定义的属性“ destroy”)

时间:2019-09-30 11:44:40

标签: jquery eonasdan-datetimepicker

我正在使用Eonasdan引导程序datetimepicker,可以在https://eonasdan.github.io/bootstrap-datetimepicker/上找到。

我有一种情况,我想销毁/重新初始化插件。

我有以下代码:

身体

@foreach($available_slot as $ak => $av)

    <a href="#" data-slot_start_time="{{$av['start']}}" data-slot_end_time="{{$av['end']}}" data-enabled_hours="{{$av['enabledHours']}}" class="btn btn-xs btn-success bookNow">Book Now</a>

@endforeach

脚本

$(function(){
    var $body = $('body');
    $body.on('click','.bookNow',function(){
        var slotStartTime = $(this).data('slot_start_time');
        var slotEndTime = $(this).data('slot_end_time');
        var enabledHours = $(this).data('enabled_hours');
        fillBookingModalForm(enabledHours,slotStartTime,slotEndTime);
        $('#bookingFormModal').modal('show');
    });

});

function fillBookingModalForm(hours,slotStartTime,slotEndTime)
{
    $('#bookingFormFront #slotStartTime').val(slotStartTime);
    $('#bookingFormFront #slotEndTime').val(slotEndTime);

    //in this line I tried to destroy
    $('#start_time').data("DateTimePicker").destroy();


    $("#start_time").datetimepicker({
        useCurrent: false,
        format: "hh:mm a",
        enabledHours: hours,
        stepping: 30
    });
}

这是我找到的关于destroy函数的链接。 https://eonasdan.github.io/bootstrap-datetimepicker/Functions/

但是,当我添加行$('#start_time').data("DateTimePicker").destroy();时,它会在控制台窗口中显示以下错误。

Uncaught TypeError: Cannot read property 'destroy' of undefined

3 个答案:

答案 0 :(得分:0)

$(“#start_time”)。datetimepicker(“ remove”)对我有用

答案 1 :(得分:0)

确定尝试$('#datetimepicker').data("DateTimePicker").date(null)的人 并出现错误 .data未定义。然后您可以使用下面的jugaad,我不知道它有多好,但对我来说很有效

function getDateTimeObj(ele) {
    if(ele && ele[0]){
        for(k in ele[0]){
            if(ele[0][k].hasOwnProperty('DateTimePicker')){
                return ele[0][k]['DateTimePicker'];
            }
        }
    }
}

用法:

getDateTimeObj($('#datetimepicker')).date(null);

答案 2 :(得分:-1)

尝试使用此命令

 $("#start_time").datepicker('remove');

此链接Similar question的引用