JS Date 对象和 jQuery UI datepicker 的区别
Difference between JS Date object and jQuery UI datepicker
当我用原生JS工具设置日期时,输入ISO日期,得到的日期是:Wed Apr 29 2020 02:00:00 GMT+0200
,所以小时是2p.m.
当我使用 jQuery UI 日期选择器和下面的代码设置日期时,我最终得到:Wed Apr 01 2020 00:00:00 GMT+0200
和 Wed Apr 29 2020 00:00:00 GMT+0200
,所以小时是 0 p.m.
我需要将 date
与 date_min
和 date_max
进行比较,这种时间上的差异无济于事。
显然是 2 p.m。第一种方法取决于时区。使我的日期易于比较的最佳方法是什么?
感谢您的宝贵时间!
<script>
var date = new Date('2020-04-29');
var date_min, date_max;
$(function() {
$('#from').datepicker({
dateFormat: 'dd/mm/yy',
onSelect: function() {
date_min = $(this).datepicker('getDate');
date_max = $('#to').datepicker('getDate');
if (date && date_min && date_max)
console.log(date, date_min, date_max, date.getTime(), date_min.getTime(), date_max.getTime());
}
});
$('#to').datepicker({
dateFormat: 'dd/mm/yy',
onSelect: function() {
date_min = $('#from').datepicker('getDate');
date_max = $(this).datepicker('getDate');
if (date && date_min && date_max)
console.log(date, date_min, date_max, date.getTime(), date_min.getTime(), date_max.getTime());
}
});
});
</script>
<div id="date">
<label for="from">from</label>
<input type="text" id="from" name="from">
<label for="to">to</label>
<input type="text" id="to" name="to">
</div>
正如 RobG 所指出的,this 回答解决了我的问题。
非常感谢!
当我用原生JS工具设置日期时,输入ISO日期,得到的日期是:Wed Apr 29 2020 02:00:00 GMT+0200
,所以小时是2p.m.
当我使用 jQuery UI 日期选择器和下面的代码设置日期时,我最终得到:Wed Apr 01 2020 00:00:00 GMT+0200
和 Wed Apr 29 2020 00:00:00 GMT+0200
,所以小时是 0 p.m.
我需要将 date
与 date_min
和 date_max
进行比较,这种时间上的差异无济于事。
显然是 2 p.m。第一种方法取决于时区。使我的日期易于比较的最佳方法是什么?
感谢您的宝贵时间!
<script>
var date = new Date('2020-04-29');
var date_min, date_max;
$(function() {
$('#from').datepicker({
dateFormat: 'dd/mm/yy',
onSelect: function() {
date_min = $(this).datepicker('getDate');
date_max = $('#to').datepicker('getDate');
if (date && date_min && date_max)
console.log(date, date_min, date_max, date.getTime(), date_min.getTime(), date_max.getTime());
}
});
$('#to').datepicker({
dateFormat: 'dd/mm/yy',
onSelect: function() {
date_min = $('#from').datepicker('getDate');
date_max = $(this).datepicker('getDate');
if (date && date_min && date_max)
console.log(date, date_min, date_max, date.getTime(), date_min.getTime(), date_max.getTime());
}
});
});
</script>
<div id="date">
<label for="from">from</label>
<input type="text" id="from" name="from">
<label for="to">to</label>
<input type="text" id="to" name="to">
</div>
正如 RobG 所指出的,this 回答解决了我的问题。
非常感谢!