К сожалению, в настоящий момент нет способа достичь поведения, которое вы описываете, с помощью нативных реквизитов config
и minTime, maxTime, minDate, maxDate
. (Я бы порекомендовал открыть билет в своем репо: flatpickr repo )
Однако вы можете использовать этот обходной путь:
const instanceOfPickr = flatpickr("#works", {
onValueUpdate: function(obj, updatedTime) {
if ((updatedTime > "03:00") && (updatedTime < "15:00")) {
instanceOfPickr.setDate(new Date("June 10, 2019 15:00:00"));
}
},
enableTime: true,
noCalendar: true,
time_24hr: true,
});
Это довольно неуклюже, но это сделает работу.
Единственная проблема с ним - если вы нажмете decrease arrow
в часы или минуты, когда время установлено на 15:00
, оно останется там. Если вы хотите добавить к этим стрелкам поведение decrease
, чтобы уменьшить время до 03:00
- вы можете специально искать их в DOM и назначить setDate(new Date("June 10, 2019 03:00:00")
экземпляру вашего TimePicker.
Надеюсь, это поможет.