我对 javascript 中的日期选择器有一个奇怪的问题。它一直在工作,但它在特定日期(2016 年 3 月 25 日)中断,我看不出有什么问题。我知道代码不是最优的。
03/25/2016 到 03/26/2016 是 1(晚上) 03/25/2016 至 03/27/2016 为 2(晚) 03/25/2016 到 03/28/2016 是 2(晚)<< 应该是 3 03/25/2016 到 03/29/2016 是 3(晚)<< 应该是 4
日期选择器的功能是计算2个日期之间的夜晚数。因此从总数中减去 1。
http://jsfiddle.net/anc7x02g/3/
$(document).ready(function () {
var selector = function (dateStr) {
var d1 = $('#datepickerln1').datepicker('getDate');
var d2 = $('#datepickerln2').datepicker('getDate');
var diff = 1;
if (d1 && d2) {
diff = Math.floor((d2.getTime() - d1.getTime()) / 86400000); // ms per day
diff = diff -1;
}
$('#total').val(diff);
}
$("#datepickerln1").datepicker();
$('#datepickerln2').datepicker();
$('#datepickerln1,#datepickerln2').change(selector)
});
我做错了什么?
最佳答案
弄明白了......这是标准时间和夏令时之间的转换......你在 3 月的最后一个星期日之后失去了一个小时,所以 25 是在 2016 年之前,28 是在之后
计算方法如下:
How to check if the DST (Daylight Saving Time) is in effect and if it is what's the offset?
关于javascript datepicker 工作到特定日期然后中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32732410/