如何避免JQuery datepicker的时区问题

我在输入表单中使用datepicker,并通过json将结果发送到数据库。 我正在使用这一行,从datePicker获取日期:

date = $("#datepicker").datepicker('getDate'); 

现在,我希望这将返回2014-04-03T00:00:00.000Z

但事实上它返回2014-04-02T22:00:00.000Z

注意两小时的差异,这也无意中改变了一个月中的某一天。 我没有使用小时和较小的时间单位。 但是我确实希望日期正确,而不会在我的代码中添加可怕的+1 。 我怀疑这与时区有关,但我似乎无法在文档或其他问答在线上找到解决方案。 有人能指出我正确的方向吗? 如果重要,我的时区是GMT +1。

谢谢 :)

我刚刚解决了这个问题,但忘记发布答案了。 检索date ,这是我修复它的方式:

 date.setMinutes(date.getMinutes() - date.getTimezoneOffset()); 

voilla

我无法弄清楚你在那里做了什么,所以我提出了一些不太好的解决方案。

我在UNIX中获取了alt字段的值:

 $( function() { $( "#datepicker" ).datepicker({ altField: "#alternate", altFormat: "@", }); 

它出现了各种奇怪的3个额外的0和一天落后于我的时区。 所以我想出了差异并加上了它。

 var a = document.getElementById("alternate").value; // take alternative field UnixTimeStamp value a = a.slice(0, -3); // get rid of 3 extra 0's a = +a + +57000; // convert to Thai time