Wie erzwinge ich das Erscheinen von Sekunden in einem HTML5-Eingabesteuerelement „Zeit“?

Lesezeit: 2 Minuten

Benutzer-Avatar
Joe Z.

Wenn ich JavaScript verwende, um den Wert eines HTML5-“Zeit”-Objekts wie folgt festzulegen:

document.getElementById("settime").value = "13:24:59";

Es wird eine Zeitsteuerung mit “13:24:59” darauf angezeigt, und ich kann alles ändern. Aber wenn ich das mache:

document.getElementById("settime").value = "13:25:00";

Es blendet die Sekunden aus und zeigt nur “13:25” ohne Sekunden an. Wie erzwinge ich in diesem Fall die Anzeige der “00” Sekunden?

(Dies ist übrigens in Google Chrome.)

  • Hast du das bei verschiedenen Clients überprüft?

    – Feeela

    23. Januar 2013 um 19:24 Uhr

Benutzer-Avatar
j08691

Stellen Sie die ein step Attribut.

Ex: <input id="settime" type="time" step="1" />

document.getElementById("settime").value = "13:24:00";
<input id="settime" type="time" step="1" />

Eine Anmerkung über die Schrittattribut:

Das Step-Attribut kann mit einem numerischen Eingabewert verwendet werden, um festzulegen, wie granular die Werte sind, die Sie eingeben können. Beispielsweise möchten Sie möglicherweise, dass Benutzer eine bestimmte Zeit eingeben, jedoch nur in 30-Minuten-Schritten. In diesem Fall können wir das Step-Attribut verwenden, wobei zu beachten ist, dass der Wert des Attributs für Zeiteingaben in Sekunden angegeben wird. Ein 30-Minuten-Inkrement hätte beispielsweise einen Schrittwert von 1800. <input type="time" step="1800">

  • Funktioniert, aber eine Erklärung für dieses Verhalten wäre in Ordnung. Erscheint mir unlogisch.

    – Feeela

    23. Januar 2013 um 19:26 Uhr


  • Die Einstellung “Schritt” erzwingt die Verfügbarkeit von Intervallen von 1 Sekunde, was bedeutet, dass die Sekunden angezeigt werden müssen. Wenn „Schritt“ stattdessen auf „60“ eingestellt wäre, würde dies die Granularität der Steuerung auf Minuten beschränken. In ähnlicher Weise würde die Einstellung auf “3600” nur die Änderung der Stunden zulassen.

    – Jo Z.

    23. Januar 2013 um 19:33 Uhr

  • @feeela – Eine Anmerkung zum Step-Attribut hinzugefügt.

    – j08691

    23. Januar 2013 um 19:52 Uhr

  • Danke für den “canIuse”-Link, er wird von IE11 nicht unterstützt und immer noch nicht von Safari unterstützt. Das ist traurig

    – Jewgenij Afanasjew

    26. Februar 2018 um 22:04 Uhr

  • Dies funktioniert nicht in Chrome 83. zeigt immer noch jede Minute im Dropdown-Menü an, anstatt nur alle 10 Minuten

    – Marius

    13. Juli 2020 um 20:29 Uhr

Step=1 funktioniert nicht auf Chrome/iOS

  • Ihre Antwort ist nicht wirklich eine Antwort auf die Frage, sondern nur ein Kommentar zu einer anderen Antwort. Bitte verwenden Sie einfach die Kommentarfunktion für die andere Antwort oder erläutern Sie stattdessen etwas mehr 🙂 Wann genau funktioniert es in Chrome und iOS nicht? Was ist mit anderen Browsern als Safari unter iOS? Auf welchen Browsern tut es funktioniert?

    – Nikofisi

    2. Februar um 21:26 Uhr

  • Ich habe Hodenschritt in Chrom und funktioniert gut für mich

    – Schwarzes Loch

    12. August um 16:28 Uhr

1244990cookie-checkWie erzwinge ich das Erscheinen von Sekunden in einem HTML5-Eingabesteuerelement „Zeit“?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy