数据表日期选择器/日期范围筛选器不起作用



我正试图在我的表上实现一个日期范围/日期选择器过滤器。我的代码不起作用,我不明白为什么。调试时唯一命中的断点是:

onSelect: function () {
lTable.draw();
},

没有其他断点被命中。当我选择一个日期时,什么都不会发生。我在网上搜索了好几个星期,试图找出这个问题。

$.fn.dataTable.ext.search.push(
function (settings, data, dataIndex) {
var from = $('#from').datepicker("getDate");
var to = $('#to').datepicker("getDate");
//data being searched
var startDate = new Date(data[2]);
//if true show row/ if not, don't
if (from == null && to == null) { return true; }
if (from == null && startDate <= to) { return true; }
if (to == null && startDate >= from) { return true; }
if (startDate <= to && startDate >= from) { return true; }
return false;
}
);    
//DATE RANGE FILTER
var lTable = $("WTM_LOG").DataTable();
$("#to").datepicker({
onSelect: function () {
lTable.draw();
},
changeMonth: true,
changeYear: true,
dateFormat: "dd/mm/yy"
});
$("#from").datepicker({
onSelect: function () {
lTable.draw();
},
changeMonth: true,
changeYear: true,
dateFormat: "dd/mm/yy"
});
// Event listener to the two range filtering inputs to redraw on input
$('#from, #to').change(function () {
lTable.draw();
});

删除此块:

onSelect: function() { lTable.draw(); },

把你的听众改成这样。试着把它放在你的$(document).ready():里

$('#from, #to').on('keyup change', function () { lTable .order([2, 'asc']) // asc or desc .draw(); });

最新更新