jQuery Datepicker setDate显示不正确的日期

问题描述:

日历应显示2016年10月19日,但它一直显示2016年10月18日。我不明白为什么!jQuery Datepicker setDate显示不正确的日期

$('#datepickerDateReceived').datepicker({ 
     format: 'yyyy-mm-dd' 
}).datepicker(
     'setDate', new Date('2016-10-19') 
    ); 

http://jsfiddle.net/rt3nC/34/

+0

似乎是为我工作,对你的jsfiddle –

+0

其显示所有的好对我来说太 –

+0

它显示为2016年10月18日我。我相信问题取决于当前时间。 对我来说,现在是美国东部时间15:51。 如果我将代码更改为'setDate',新日期('2016-10-19 00:00'),它会正常工作。 – bobjoe

的问题是,日期字符串被解析为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') 
    ); 
+0

啊!它现在有效。非常感谢! – omgsohungry