J'ai une page Web avec trois listes déroulantes pour le jour, le mois et l'année. Si j'utilise le JavaScript Date
qui prend des nombres, alors j'obtiens un Date
pour mon fuseau horaire actuel :
new Date(xiYear, xiMonth, xiDate)
Donner la date correcte, mais il pense que cette date est GMT+01:00 en raison de l'heure d'été.
Le problème ici est que je passe ensuite cette Date
à une méthode Ajax et lorsque la date est désérialisée sur le serveur, elle a été convertie en GMT et a donc perdu une heure, ce qui fait reculer le jour d'une unité. Maintenant, je pourrais simplement passer le jour, le mois et l'année individuellement dans la méthode Ajax, mais il semble qu'il devrait y avoir un meilleur moyen.
La réponse acceptée m'a orienté dans la bonne direction, mais en utilisant simplement la fonction setUTCHours()
par lui-même changé :
Apr 5th 00:00 GMT+01:00
a
Apr 4th 23:00 GMT+01:00
J'ai également dû définir la date, le mois et l'année UTC pour obtenir le résultat suivant
Apr 5th 01:00 GMT+01:00
ce qui est ce que je voulais.
12 votes
Si la réponse acceptée vous a indiqué la bonne direction mais n'a pas répondu à votre question, je dirais qu'elle ne devrait pas être la réponse acceptée. La réponse doit répondre à la question posée.