Antwort an „Rolf B“ verfassen

Hallo Henry,

laut Spec ist die Zuweisung eines Date-Objekts an valueAsDate für datetime-local Inputs nicht erlaubt, und mein Edge hier erbricht sich auch darüber.

Grund laut MDN: Date-Objekte sind nicht localized. Was gelogen ist, denn ein Date kennt ja seinen Timezone-Offset. Aber das ist ihnen vielleicht nicht local genug (ich sag nur Europe/Busingen...)

Aber ich nehme an, dass es Dir vor allem um ein gemeinsames Date/Time Eingabefeld geht. Das bekommst Du mit datetime-local nicht unbedingt. Soweit ich weiß, hat der Firefox einen Bug und gibt Dir keinen Timepicker.

Das Sekundenproblem habe ich bei mir nicht (im Firefox hatte ich es auch nicht) - welchen Browser verwendest Du?

Die 2 Stunden Differenz klingen nach Localtime/UTC-Time, dein Browser scheint - specwidrig - ein Date für valueAsDate zu akzeptieren, verwendet aber die UTC-Zeit. Könnte man mit setUTCHours() adressieren, aber ich würde das lassen.

Nimm lieber (new Date()).toISOString().substring(0,10) für das Date und pack es in eigene Eingabefelder mit type="date". Ist zwar lästiger, aber portabler, glaub ich.

Oder mein Knoff-Hoff ist wiedermal veraltet.

Rolf

--
sumpsi - posui - obstruxi
freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar

Ihre Identität in einem Cookie zu speichern erlaubt es Ihnen, Ihre Beiträge zu editieren. Außerdem müssen Sie dann bei neuen Beiträgen nicht mehr die Felder Name, E-Mail und Homepage ausfüllen.

abbrechen