【发布时间】:2021-04-13 01:20:56
【问题描述】:
我只想在用户选择两个日期选择器之间的日期时过滤我的数据表。我尝试了一个代码,但是当我选择一个日期时它没有显示。任何人都知道如何修复我的代码?非常感谢!
这是我尝试过的:
function implement_cm_table() {
var table = $('#show-cm-table').DataTable({
autoWidth: false,
responsive: true,
dom: '<"datatable-header"fl><"datatable-scroll"t><"datatable-footer"ip>',
language: {
search: '<span>Search</span> _INPUT_',
lengthMenu: '<span>Show:</span> _MENU_',
paginate: { 'first': 'First', 'last': 'Last', 'next': '→', 'previous': '←' }
}
});
$.fn.dataTable.ext.search.push(
function (settings, data, dataIndex) {
var min = $('#from').datepicker('getDate');
var max = $('#to').datepicker('getDate');
var startDate = new Date(data[0]);
if (min == null && max == null) return true;
if (min == null && startDate <= max) return true;
if (max == null && startDate >= min) return true;
if (startDate <= max && startDate >= min) return true;
return false;
}
);
$('#min').datepicker({ onSelect: function () { table.draw(); }, changeMonth: true, changeYear: true });
$('#max').datepicker({ onSelect: function () { table.draw(); }, changeMonth: true, changeYear: true });
// Event listener to the two range filtering inputs to redraw on input
$('#min, #max').change(function () {
table.draw();
});
}
【问题讨论】:
-
嗨,你能让你的代码可运行吗?
-
我的代码不起作用。当我从两个日期选择器中选择一个日期时,什么也没有发生。
-
你能帮帮我吗? @斯瓦蒂
-
是的,但是首先让你的代码可以运行,然后就很容易解决你的问题。
标签: javascript jquery jquery-ui datatables