【发布时间】:2013-11-03 01:08:15
【问题描述】:
我想知道是否可以在不保留用户语言环境的时区信息的情况下使用 AngularStrap 的日期选择器。在我们的应用程序中,我们希望处理具有到期日期的 Contract 对象。
添加或编辑合同对象时,有一个日期选择器字段用于选择日期。会发生以下情况:
- 用户选择日期(例如2013-10-24)
- Angular 将 javascript 日期对象绑定到 ng-model 字段
- 绑定的日期对象位于用户的时区(例如 GMT+3)
- 用户提交表单
- 使用 Angular 的 $http 服务将日期发送到服务器
在第 5 步中,日期被转换为 UTC 格式。所选日期为 GMT+3 2013-10-24 午夜,但 UTC 转换将日期更改为 2013-10-23 晚上 9 点。
我们如何防止转换,或者在整个过程中使用 UTC 日期?我们不希望合同的日期根据用户的本地时区而改变。相反,我们希望日期始终为 2013 年 10 月 24 日,无论哪个时区。
我们当前的解决方案是对 AngularStrap 库进行小幅更改,以便日期在发送到服务器时不会更改。
如果我们可以在服务器中获取用户选择的时区,我们可以在那里进行另一次转换,但服务器没有该信息。
感谢所有想法!
【问题讨论】:
标签: javascript angularjs datepicker timezone