YADCF: фильтр диапазона_дат не работает с определенным форматом даты - PullRequest
0 голосов
/ 05 декабря 2018

Я не могу заставить фильтр range_date yadcf работать.Я использую это с datatables.net.И я не знаю, что я что-то упустил или это ошибка.

Я использую этот формат даты для исходных данных, передаваемых в datatable: YYYY-MM-DDTHH:mm.

И я использую этот формат для отображения даты в устройстве выбора времени: DD/MM/YYYY.

Я заглянул внутрь плагина yadcf, чтобы увидеть, что он делает, и, похоже, он получает дату строки из исходного значения, переданного в datatable (который в моем случае имеет следующий формат: 'YYYY-MM-DDTHH: мм ') и прочитать его в формате, указанном в moment_date_format.Затем он сравнивает эту дату с датами в фильтре диапазона, эти даты имеют следующий формат: «ДД / ММ / ГГГГ», но yadcf все еще читает ее в формате, указанном в moment_date_format.

Я сделалскрипка, которая показывает проблему: http://jsfiddle.net/vatvat99/go5mxw0d/32/

var data = [
  {date: '2018-12-05T00:00'},
  {date: '2018-12-04T00:00'},
  {date: '2018-12-03T00:00'},
  {date: '2018-12-02T00:00'},
  {date: '2018-12-01T00:00'},
];

$(document).ready(function () {
  $('#example').dataTable({
    data: data,                    
    columnDefs: [{
      defaultContent: "-",
      targets: "_all"
    }],
    columns: [
      {
        name: 'date',
        data: 'date',
      }
    ],
  }).yadcf([
    { 
      column_number: 0, 
      filter_container_id: 'dateContainer',
      filter_type: 'range_date', 
      datepicker_type: 'bootstrap-datetimepicker',
      moment_date_format: 'YYYY-MM-DDTHH:mm',
      filter_plugin_options: {
        format: 'DD/MM/YYYY',
        showClear: true,
      }
    },
  ]);
});

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 06 декабря 2018

Пока вы можете решить эту проблему, установив один и тот же формат даты для moment_date_format и filter_plugin_options: { format: 'YYYY-MM-DDTHH:mm',, это происходит потому, что даже если filter_plugin_options.format используется для вывода выбора даты выбора даты позже в логике фильтрации addRangeDateFilterCapabilitymoment_date_format используется для его анализа (вы можете назвать это ошибкой), поэтому пока используйте тот же формат и, кроме того, вы можете открыть проблему со ссылкой jsfiddle, прикрепленной к репозиторию yadcf.

.yadcf([ { column_number: 0, filter_container_id: 'dateContainer', filter_type: 'range_date', datepicker_type: 'bootstrap-datetimepicker', moment_date_format: 'YYYY-MM-DDTHH:mm', filter_plugin_options: { format: 'YYYY-MM-DDTHH:mm', showClear: true, } },

См. Рабочий jsfiddle

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...