Хотите отключить определенный интервал времени для определенной даты в средстве выбора даты и времени начальной загрузки

#jquery #datetimepicker #bootstrap-datetimepicker

#jquery #datetimepicker #bootstrap-datetimepicker

Вопрос:

Хотите отключить часы, предположим, (с 12:00 до 15:00) и (с 21:00 до 23:00) только 20 апреля.(Bootstrap DateTimePicker)

Когда я попытался его отключить.. это применяется ко всем предстоящим датам (21,22,23 …).

Вот моя функция.. часы поступают из резервной копии … при определенном событии изменения выпадающего списка

 function setCalenderStart(hours) {
  var str = 0;

  $.each(hours, function(index, value) {
    str = str   ','   value;
  });

  var newstr = "["   str   "]";
  var blockedhrs = newstr.toString();


  $('#pdbc').datetimepicker({
    format: "dd/mm/yyyy - hh:00 (IST)",
    minView: 1,
    autoclose: true,
    weekStart: 1,
    todayBtn: 1,
    autoclose: 1,
    todayHighlight: 1,
    startView: 2,
    forceParse: 0,
    showMeridian: 1,
    hoursDisabled: blockedhrs,
    startDate: new Date(),
  });
  

Это должно применяться только к 20-му или любой конкретной дате .. не для всех дат.

Комментарии:

1. Можете ли вы предоставить ссылку на используемый вами datepicker? В jQueryUI есть средство выбора даты, но не похоже, что вы его используете, так какой же это?

2. @DougF Это средство выбора даты и времени начальной загрузки «bootstrap-datetimepicker.js »

3. Хорошо, вам придется использовать пользовательский код, который запускается при событии, чтобы заставить это работать. В этом средстве выбора даты нет того, что вы ищете, и я также обнаружил в нем ошибку. Итак, запишите событие с помощью $(‘#pdbc’).on(‘dp.change’, function (e) { и возьмите дату в текстовом поле и сравните ее с коллекцией, которую вам нужно будет создать, которая будет содержать даты / время, которые вы хотите отключить. Если выбранная дата / время находится в коллекции, вы можете предпринять действия, чтобы направлять пользователя. Дайте мне знать, если что-то из этого сбивает с толку.

4. @DougF В этом datetimepicker мы должны сначала выбрать конкретную дату (скажем, 21/04/2019), и сразу после этого мы должны указать время (скажем, 11:00 утра), а затем эта дата время заполняется в текстовом поле (например, 21/04/2019 — 11:00 утра)… Поэтому я не могу получить дату из текстового поля перед выбором часов, потому что в это время текстовое поле empty..as я должен заблокировать часы сразу после выбора даты..

5. Вот почему вы используете событие изменения. Вы не захватываете дату до выбора, вы захватываете ее после того, как выбор сделан. Как только пользователь изменяет дату в средстве выбора, срабатывает событие, и вы получаете обновленный текст из параметра, который в моем примере был «e».