Как остановить настройку datetimepicker сегодняшней даты в текстовом поле по умолчанию при нажатии

Когда мы выбираем значок календаря, он автоматически устанавливает сегодняшнюю дату в текстовое поле. Есть ли какой-либо параметр/опция в функции datetimepicker(), которая может быть установлена ​​​​на false или null, предотвращая установку datetimepicker() сегодняшней даты в текстовое поле по умолчанию. Если кто-то не выбирает какую-либо дату из календаря, текстовое поле должно быть пустым, а не сегодняшняя дата, установленная datetimepicker().


person Narendra Singh Rathore    schedule 28.07.2015    source источник


Ответы (2)



Если вы используете .datetimepicker() для Bootstrap 4 + jQuery

Когда вы щелкаете элемент, может произойти нежелательный эффект обновления даты.

Это хак, позволяющий избежать переопределения текущего значения текущей датой при щелчке и разрешить нормальный выбор средства выбора.

Для версии Tempus Dominus: https://tempusdominus.github.io/bootstrap-4/

JS

var dateNow = new Date();

$('.datetimepicker').each(function() {

    var _el = this;

    $(this).datetimepicker({
        autoclose: true,
        allowInputToogle: true,
        format: 'YYYY-MM-DD HH:mm',
        defaultDate: dateNow,
    });

    // 'this.parent()' is the container and data-target  |  '_el' is the input
    $(this).parent().on('change.datetimepicker', function(e) {

        // HACK
        if (!e.oldDate) return;

        $(_el).val(e.date.format('YYYY-MM-DD HH:mm'));
    });
});

HTML

<div class="form-group">
    <label class="control-label"><i class="icon-right-open-outline"></i> Date</label>
    <div class="input-group" id="form_datetimepicker_1">

        <input name="date_selected"
               id="date_selected"
               class="form-control datetimepicker"
               type="text"
               data-toggle="datetimepicker"
               value="2019-11-22 22:55:00"
               data-target="#form_datetimepicker_1">

        <div class="input-group-append" data-target="#form_datetimepicker_1" data-toggle="datetimepicker">
            <div class="input-group-text"><i class="fa fa-calendar"></i></div>
        </div>
    </div>
</div>
person Heroselohim    schedule 02.05.2019