SQL Server日期(不是日期时间)到JavaScript日期 - 休息一天

时间:2015-02-04 15:27:04

标签: javascript sql-server date ember.js pikaday

我已经尝试了很多东西来解决这个问题,但问题仍然存在问题。

我在SQL Server中有一个Date字段(不是Datetime,因为时间无关紧要),并且Java API(实际上是Spring)将此字段提供给我的Ember前端,用户可以在其中编辑字段(使用一个ember-pikaday输入,但这可能是无关紧要的。)

问题是,当我切换到编辑模式时,日期显示之前的一个日期,如果我保存,之前的一个日期是保存的日期。如果我查看API返回的内容,它看起来如下所示: "2015-02-03T05:00:00.000+0000"

我仍然非常学习JavaScript(和Ember),所以看起来有一些本地时区信息被自动使用(我在EST,这是GMT-5),这就是它返回5AM时间的原因

我真的不希望它随着时间的推移做任何事情,但由于JavaScript日期对象的定义包括时间信息,我不知道如何摆脱它。我已经尝试将时间设置为中午,这样即使有五个小时的差异,也会是同一天,但由于数据库没有节省时间,下次刷新页面时,我又回到了方一。

我已经把事情用完了谷歌,这就是我在这里发布的原因。我确信我错过了一些显而易见的事情。

编辑:我尝试创建一个新变量来获取日期部分并在整个过程中使用它,但当我进入编辑模式时,我的Pikaday输入发挥作用,它仍然显示日期之前,所以我怀疑这是问题的原因,但我没有看到任何人抱怨这个。

1 个答案:

答案 0 :(得分:0)

这是一个类似的ember.js问题:

Ember.js dates a day early

另外,请确保您的javascript ISO-8601日期具有时区。我在web api上遇到了类似的问题,其中ISO-8601日期没有发送任何时区信息,也没有Z表示UTC,接收方认为它们没有转换为UTC并且提前一天制作了它们#2012; 2012-07-27T18 :51:45.53403Z // UTC'。您可以使用Fiddler或Chrome开发工具查看您发送到服务器的日期格式,确保Z或偏移量' 2012-07-27T11:51:45.53403-07:00 //本地'在那里。