YADCF: фильтр диапазона_дат не работает с определенным форматом даты
Я не могу заставить фильтр range_date yadcf работать. Я использую это с datatables.net. И я не знаю, что я что-то упустил или это ошибка.
Я использую этот формат даты для исходных данных, передаваемых в datatable: YYYY-MM-DDTHH:mm
,
И я использую этот формат для отображения даты в окне выбора времени: DD/MM/YYYY
,
Я заглянул внутрь плагина yadcf, чтобы увидеть, что он делает, и он, похоже, получает дату строки из исходного значения, переданного в datatable (который в моем случае имеет следующий формат: "YYYY-MM-DDTHH:mm"), и прочитал это в формате, указанном в 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 ответ
Сейчас вы можете решить эту проблему, установив тот же формат даты для moment_date_format
а также filter_plugin_options: { format: 'YYYY-MM-DDTHH:mm',
это происходит потому, что хотя filter_plugin_options.format
используется для вывода выбора даты выбора даты позже в логике фильтрации addRangeDateFilterCapability
moment_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,
}
},