我正在使用bootstrap datepicker。
我将最短日期设置为当前日期,将最长日期设置为明年12月。
minDate = new Date();
minDate.setDate(1);
maxDate = new Date();
maxDate.setFullYear(maxDate.getFullYear() + 1);
maxDate.setMonth(12);
maxDate.setDate(0);
maxDate.setHours(23,59,59);
$('#startDateInput').datepicker({
format : "MM yyyy",
viewMode : "months",
minViewMode : "months",
startDate : minDate,
endDate : maxDate
});
$('#endDateInput').datepicker({
format : "MM yyyy",
viewMode : "months",
minViewMode : "months",
startDate : minDate,
endDate : maxDate
});
我正在从日期选择器中读取开始日期和结束日期,如下所示:
var startDateString = $('#startDateInput').val();
var startParts = startDateString.split(' ');
var startEpoch = new Date(parseInt(startParts[1]) , monthsArray.indexOf(startParts[0].toLowerCase()), 01).getTime();
document.getElementById('startDate').value = startEpoch;
var endDateString = $('#endDateInput').val();
var endParts = endDateString.split(' ');
var endEpoch = new Date(parseInt(endParts[1]) , monthsArray.indexOf(endParts[0].toLowerCase())+1,0,23,59,59).getTime();
我将时期存储在数据库中。当我检索日期并在编辑表单中显示时,我就是这样做的
if ($('#object').val()) {
var stDate = new Date(Number("${object.startDate}"));
var enDate = new Date(Number("${object.endDate}"))
$('#startDateInput') .datepicker('setDate', new Date(stDate));
$('#endDateInput').datepicker('setDate', new Date(enDate));
}
让我们说我今天选择了2019年12月作为输入并保存了它。稍后当我编辑同一个表单时,endDateInput没有被填充,因为结束日期不包括在内,我怀疑。