我正在使用日期选择器https://github.com/dangrossman/bootstrap-daterangepicker来过滤带有ajax回调的统计信息。
我在页面上有额外的过滤器选项,我需要他们来触发datepicker的变更回调吗?
任何想法如何从其他下拉菜单中触发回调或抽象回调函数,在这种情况下我需要将datepicker中的起始日期作为参数传递?
答案 0 :(得分:2)
我不满意这是最好的解决方案但是我设置了2个全局变量用于开始和结束然后用回调更新它们以便我可以调用ajax刷新并从任何地方传递日期。
var startDate = Date.today();
var endDate = Date.today();
function refresh_stats(start, end)
{
// Do ajax refresh
}
$('#reportrange').daterangepicker(
{
ranges: {
'Today': ['today', 'today'],
'Yesterday': ['yesterday', 'yesterday'],
'Last 7 Days': [Date.today().add({ days: -6 }), 'today'],
'Last 30 Days': [Date.today().add({ days: -29 }), 'today'],
'This Month': [Date.today().moveToFirstDayOfMonth(), Date.today().moveToLastDayOfMonth()],
'Last Month': [Date.today().moveToFirstDayOfMonth().add({ months: -1 }), Date.today().moveToFirstDayOfMonth().add({ days: -1 })]
}
},
function(start, end)
{
startDate = start;
endDate = end;
refresh_stats(start, end);
}
);
// Then can call this whenever
refresh_stats(startDate, endDate);