JQuery UI Timepicker, сбрасывая minDateTime и maxDateTime в ноль после установки

0

Я использую сторонний jQuery UI Timepicker который можно найти здесь, в этом репозитории git: jQuery UI Timepicker

Я реализовал селектор диапазона datetime, просто используя два элемента ввода datetimepicker которые передают выбранную дату в качестве другого поля min или max datetime. Он работает, и задано время min и max datetime, но когда я удаляю один из полей, он не сбрасывает другие поля min/max time.

Например, допустим, что я установил свое поле from поля 4/23 5:00p. Мой to поле не может быть установлена ранее, чем 4/23 5:00p. Когда я удаляю значение from from, он должен сбросить to min до 12:00a так как from больше не установлен, но он остается в 5:00p даже если функция minDateTime была установлена minDateTime null.

Как я могу получить время, чтобы по-настоящему сбросить настройки по умолчанию после установки в первый раз?

var fromDatepickerPointer = fromValueFieldPointer.inputElement;
var toDatepickerPointer   = toValueFieldPointer.inputElement;
function fromOnCloseFunction(selectedDateTime, inst) {
  if(fromDatepickerPointer.val() != '') {
    var minTime = new Date($(this).datetimepicker('getDate').getTime());
    console.log("minTime: " + minTime);
    console.log("from SelectedDateTime: " + selectedDateTime);
    toDatepickerPointer.datetimepicker('option', 'minDateTime', minTime);
    toDatepickerPointer.datetimepicker('option', 'minDate', minTime);
  } else {
    console.log("from should be set to null but isn't");
    toDatepickerPointer.datetimepicker('option', 'minDateTime', null);
    toDatepickerPointer.datetimepicker('option', 'minDate', null);
  }
}
fromDatepickerPointer.datetimepicker('option', 'onClose', fromOnCloseFunction); 

function toOnCloseFunction(selectedDateTime, inst) {
  if(toDatepickerPointer.val() != '') {
    var maxTime = new Date($(this).datetimepicker('getDate').getTime());
    console.log("maxTime: " + maxTime);
    console.log("to SelectedDateTime: " + selectedDateTime);
    fromDatepickerPointer.datetimepicker('option', 'maxDate', maxTime);
    fromDatepickerPointer.datetimepicker('option', 'maxDateTime', maxTime);
  } else {
    console.log("to should be set to null but isn't");
    fromDatepickerPointer.datetimepicker('option', 'maxDate', null);
    fromDatepickerPointer.datetimepicker('option', 'maxDateTime', null);
  }
}
toDatepickerPointer.datetimepicker('option', 'onClose', toOnCloseFunction);

Я честно чувствую, что это проблема с самим плагином, а не с моим кодом, но я думаю, вы можете судить об этом.

Теги:
datetime
datetimepicker

1 ответ

0

Я нашел решение этой проблемы. Чтобы сбросить значения min и max. Я устанавливаю maxDateTime и minDateTime в new Date('00:00:00') вместо null когда значение поля пуст.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню