我有2个datepickers fr startdate和enddate。
1)例如,我的开始时间是“01/08/2016”。我的结束日期是“2016年8月6日”。
2)我选择了(8月1日至8月6日)共六天。
3)我如何获得那些日子或在警报中打印所有6天。
var nowTemp = new Date();
var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);
var checkin = jQuery('#startDate').fdatepicker({
format: "dd.mm.yyyy",
onRender: function (date) {
return date.valueOf() < now.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function (ev) {
}).data('datepicker');
var checkout = jQuery('#endDate').fdatepicker({
format: "dd.mm.yyyy",
onRender: function (date) {
return date.valueOf() <= checkin.date.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function (ev) {
checkout.hide();
}).data('datepicker');
jQuery("#startDate,#endDate").fdatepicker({
autoclose: true,
format: "dd.mm.yyyy",
language: 'de',
todayHighlight: false
});
<input type="text" id="startDate" name="start_datum" class="input_text date" value="" >
<input type="text" id="endDate" name="end_datum" class="input_text" value="">
答案 0 :(得分:1)
你可以这样做:
var days = Math.round(Math.abs((date1.getTime() - date2.getTime())/(24*60*60*1000)));
答案 1 :(得分:1)
您可以使用Date.prototype.getDate
和Date.prototype.setDate
:
var start = new Date('2016-07-31'),
end = new Date('2016-08-06');
var date = start;
do {
var date = new Date(date.setDate(date.getDate() + 1));
console.log(date);
} while (date < end);
答案 2 :(得分:0)
你可以使用时刻js。请参阅该库的解决方案:
var dateB = moment('2016-08-01');
var dateC = moment('2016-08-06');
console.log('Difference is ', dateB.diff(dateC), 'milliseconds');
console.log('Difference is ', dateB.diff(dateC, 'days'), 'days');
这个图书馆非常适合日期管理。