日历应该显示在2016年10月19日,但它一直显示在2016年10月18日。我无法弄清楚原因!
$('#datepickerDateReceived').datepicker({
format: 'yyyy-mm-dd'
}).datepicker(
'setDate', new Date('2016-10-19')
);
答案 0 :(得分:0)
问题是日期字符串被解析为UTC 0,而不是本地时区。 source
要解决此问题,只需在日期字符串中添加时间
即可$('#datepickerDateReceived').datepicker({
format: 'yyyy-mm-dd'
}).datepicker(
// Initialize the date to be 00:00 local timezone on October 19, 2016
'setDate', new Date('2016-10-19 00:00')
);
答案 1 :(得分:0)
这在Safari中不起作用: $('#datepickerDateReceived')。datepicker('setDate',new Date('2016-10-19 00:00'));
为了使它能够在Safari中工作,我不得不采用这种方式: $('#datepickerDateReceived')。datepicker('setDate',new Date('2016-10-19 00:00'.replace(/ \ s /,'T'))));