Deaktivieren der Eingabe von Text in <input type="number">
Ich bin eine einfache web-app. Bei einem Teil davon, habe ich noch ein Eingabefeld type="number"
<input type="number" min="0">
Jedenfalls, wenn ich den code in meinem aktuellen Google Chrome-Browser, ich bin in der Lage, um text einzugeben zu:
Ich nicht möchten, dass Benutzer in der Lage sein, das zu tun. Wie soll ich das beheben?
- hinzufügen von javascript zu fangen, Eingabe und löschen alles, was nicht eine Zahl ist.
- Wie mache ich das?
- Versuchen Sie dieses, stackoverflow.com/questions/7295843/...
- Hinweis: Sie können auch die
pattern
Attribut. html5pattern.com
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie die Verwendung von JavaScript (z.B. jQuery), dass nur bestimmte Zeichen:
Hier ist ein Turnschuh.
Gleiche Sache mit Unterstützung für Fließkommazahlen:
Und hier ist eine andere Geige.
Update: Obwohl Sie vielleicht nicht brauchen, hier ist eine Lösung, die es ermöglicht, ein führendes Minuszeichen.
3. Geige
Und nun eine endgültige Lösung, die es ermöglicht nur gültig Dezimalstellen (einschließlich Schwimmer und negative zahlen):
Letzte Geige
.
dann ..? dies wird nicht helfen...Können Sie HTML5 input type Nummer zu beschränken, nur die Anzahl Einträge:
Diese nur in HTML5 Beschwerde browser. Stellen Sie sicher, dass Ihr html-Dokument doctype ist:
Für Allgemeine Zwecke, die Sie haben können, JS-Validierung wie folgt:
Wenn Sie zulassen möchten, dass die Dezimalstellen ersetzen Sie die "wenn-Bedingung" mit dabei:
Quelle: HTML-Text-Eingabe erlaubt nur Numerische Eingaben
1.2.3.4
ist offensichtlich keine gültige Dezimalzahl. BTW, dein code-snippet verhindert auch, dass Tastenkombinationen wieCTRL+A
undCTRL+C
von der Arbeit.CTRL+C
ist in Ordnung.. und1.2.3.4
ist kein Gültiger decimal.. richtig.. aber ich glaube, wir habe nicht geschrieben, dieser code gültig Dezimalzahlen... die Anforderung ist anders....