jQuery.datepicker.formatDate 和时区偏移

发布于 2024-12-09 19:10:56 字数 805 浏览 0 评论 0原文

为了处理日期,我在应用程序中使用 jQuery UI public 方法: jQuery.datepicker.formatDate 请参阅参数和来源:https://github.com/ jquery/jquery-ui/blob/master/ui/jquery.ui.datepicker.js

但是,根据计算机时区,有时会显示错误的日期。

此处演示:http://jsfiddle.net/7ACdB/

在 Windows 中使用 UTC+1(巴黎)时区,我得到:

03/30/20
03/30/20

在 Windows 中使用 UTC-6(美国和加拿大)时区,我得到:

03/29/20 <- meh!
03/30/20

当您更改操作系统时区时,您需要重新启动浏览器(至少对于 google chrome 来说是这样)。

我的问题是你可以想象的“03/29/20”日期。

有人可以向我解释这是正常现象还是 jquery ui 问题吗?

我开始认为在美国时区看到“Mon Mar 30 2020 00:00:00 GMT+0200(浪漫夏令时间)”为 03/29/20 是正常的,但我不太确定。 :-/

To handle dates, i'm using a jQuery UI public method in my application: jQuery.datepicker.formatDate
See params & source here : https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.datepicker.js

However the wrong date is displayed sometimes, according to the computer timezone.

Demo here : http://jsfiddle.net/7ACdB/

With a UTC+1 (paris) timezone in windows, i got :

03/30/20
03/30/20

With a UTC-6 (us&canada) timezone in windows, i got :

03/29/20 <- meh!
03/30/20

You need to restart your browser (well for google chrome at least) when you change the OS timezone.

My problem is the "03/29/20" date as you can imagine.

Can somebody explains to me if this is normal or a jquery ui issue ?

I'm beginning to think that it is normal to see a "Mon Mar 30 2020 00:00:00 GMT+0200 (Romance Daylight Time)" as 03/29/20 in a US timezone but i'm not so sure. :-/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

千年*琉璃梦 2024-12-16 19:10:56

你得到的是正确的。您的示例将巴黎的时间设置为午夜。巴黎的午夜是我所在的美国东部时区的前一天下午 6 点。

您的第一次:GMT+0200 是巴黎

您的第二次:GMT-0500 是芝加哥(注意是目前为夏令时)

因此,当您将时区更改为美国时(使用我们的 6 时间之一区),输出是美国的时间,而巴黎的那个时间

这是一个更新的小提琴,时间设置为巴黎上午 6 点: http://jsfiddle.net/jensbits /7ACdB/1/

What you're getting is correct. Your example sets the time at midnight for Paris. Midnight in Paris is 6PM the day before in the US for the Eastern Time Zone which I am in.

Your first time: GMT+0200 is Paris

Your second time: GMT-0500 is Chicago (note it is currently Daylight Savings Time)

So, when you change the time zone to US (using one of our 6 time zones), the output is the time in the US when is that time in Paris.

Here is an updated fiddle with a the time set to 6 AM Paris: http://jsfiddle.net/jensbits/7ACdB/1/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文