Der number
-Typ hat einen step
-Wert, der steuert, welche Zahlen gültig sind (zusammen mit max
und min
), der standardmäßig auf 1
festgelegt ist. Dieser Wert wird auch von Implementierungen für die Steuerungsschaltflächen verwendet (d.h. Drücken von "hoch" erhöht um step
).
Ändern Sie diesen Wert einfach auf das, was angemessen ist. Für Geld werden wahrscheinlich zwei Dezimalstellen erwartet:
Gesamtbetrag
(Ich würde auch min=0
festlegen, wenn es nur positiv sein kann)
Wenn Sie lieber eine beliebige Anzahl von Dezimalstellen zulassen möchten, können Sie step="any"
verwenden (obwohl ich für Währungen empfehlen würde, bei 0.01
zu bleiben). In Chrome & Firefox erhöhen/verringern die Steuerungsschaltflächen bei Verwendung von any
um 1. (Dank an Michal Stefanows Antwort für das Aufzeigen von any
, und sehen Sie hier die entsprechende Spezifikation)
Hier ist ein Playground, der zeigt, wie sich verschiedene Schrittgrößen auf verschiedene Eingabetypen auswirken:
Schritt 1 (Standard)
Schritt 0.01
Schritt beliebig
Schritt 20
Schritt 60 (Standard)
Schritt 1
Schritt beliebig
Schritt 0.001
Schritt 3600 (1 Stunde)
Schritt 86400 (1 Tag)
Schritt 70 (1 min, 10 sec)
Wie üblich möchte ich noch eine schnelle Anmerkung hinzufügen: Denken Sie daran, dass die Validierung auf der Client-Seite nur ein Komfort für den Benutzer ist. Sie müssen auch auf der Server-Seite validieren!