【发布时间】:2017-04-29 01:07:36
【问题描述】:
日历应该显示 2016 年 10 月 19 日,但一直显示 2016 年 10 月 18 日。我不知道为什么!
$('#datepickerDateReceived').datepicker({
format: 'yyyy-mm-dd'
}).datepicker(
'setDate', new Date('2016-10-19')
);
【问题讨论】:
-
似乎对我有用,在你的 jsFiddle 上
-
它对我也有好处
-
对我来说显示的是 2016 年 10 月 18 日。我相信问题取决于当前时间。对我来说是美国东部时间 15:51。如果我将代码更改为'setDate',new Date('2016-10-19 00:00'),它可以正常工作。
-
问题可能是时区问题。
-
这是@Barmar 所说的时区问题。尝试以下日期结构。 javascript 似乎在格林威治标准时间 0 午夜创建日期,然后将其调整为等效时区。
new Date('2016-10-19');>2016 年 10 月 18 日星期二 20:00:00 GMT-0400(东部夏令时间)new Date('2016-10-19 00:00');>2016 年 10 月 19 日星期三 00:00:00 GMT-0400(东部夏令时间)来自 MDN支持 ISO 8601格式的不同之处在于仅日期字符串(例如“1970-01-01”)被视为 UTC,而不是本地。
标签: javascript jquery datepicker calendar