Ich habe eine Webseite mit drei Dropdown-Listen für Tag, Monat und Jahr. Wenn ich das JavaScript verwende Date
Konstruktor, der Zahlen annimmt, dann erhalte ich eine Date
Objekt für meine aktuelle Zeitzone:
new Date(xiYear, xiMonth, xiDate)
Geben Sie das richtige Datum an, aber aufgrund der Sommerzeit wird dieses Datum für GMT+01:00 gehalten.
Das Problem dabei ist, dass ich dann diese Date
an eine Ajax-Methode, und wenn das Datum auf dem Server deserialisiert wird, wurde es in GMT umgewandelt und hat dadurch eine Stunde verloren, wodurch sich der Tag um eine Stunde nach hinten verschiebt. Jetzt könnte ich nur den Tag, Monat und Jahr einzeln in die Ajax-Methode übergeben, aber es scheint, dass es einen besseren Weg sein sollte.
Die akzeptierte Antwort wies mich in die richtige Richtung, aber nur mit setUTCHours()
von selbst verändert:
Apr 5th 00:00 GMT+01:00
まで
Apr 4th 23:00 GMT+01:00
Dann musste ich auch noch das UTC-Datum, den Monat und das Jahr einstellen, um am Ende Folgendes zu erhalten
Apr 5th 01:00 GMT+01:00
was ich auch wollte.
22 Stimmen
Wenn die akzeptierte Antwort Sie zwar in die richtige Richtung führt, aber Ihre Frage nicht beantwortet, sollte sie meiner Meinung nach nicht die akzeptierte Antwort sein. Die Antwort sollte die gestellte Frage beantworten.