HTML 部分
<div id="report-date-range" class="pull-right" style="background: #fff; cursor: pointer; padding: 5px 10px; border: 1px solid #ccc; width: 100%">
<i class="glyphicon glyphicon-calendar fa fa-calendar"></i>
<span></span> <b class="caret"></b>
</div>
Javascript
function updateLabel(start, end, label) {
if (label === 'Custom Range') {
$("#report-date-range span").html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
} else {
$("#report-date-range span").html(label);
}
}
$("#report-date-range").daterangepicker({
startDate: moment().startOf('day'),
endDate: moment().endOf('day'),
opens: "right",
drops: "down",
ranges: {
'Today': [moment().startOf('day'), moment().endOf('day')],
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
'This Month': [moment().startOf('month'), moment().endOf('month')],
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
}
}, updateLabel);
// Set the default value
var datepicker = $("#report-date-range").data('daterangepicker');
var initialSel = 'This Month'; // Or something else
if (initialSel && datepicker.ranges && datepicker.ranges[initialSel]) {
var range = datepicker.ranges[initialSel];
datepicker.chosenLabel = initialSel;
datepicker.setStartDate(range[0]);
datepicker.setEndDate(range[1]);
updateLabel(datepicker.startDate, datepicker.endDate, datepicker.chosenLabel);
} else {
datepicker.chosenLabel = 'Today';
updateLabel(datepicker.startDate, datepicker.endDate, datepicker.chosenLabel);
}