Ich mache eine einfache Web-App. An einem Teil davon habe ich ein Eingabefeld vom Typ="Nummer"
eingefügt %Vor%Wenn ich den Code in meinem neuesten Google Chrome Browser ausführe, kann ich auch Text eingeben:
Ich möchte nicht, dass Benutzer das können. Wie soll ich das beheben?
Sie können JavaScript (z. B. mit jQuery) verwenden, um nur bestimmte Zeichen zuzulassen:
%Vor%Hier ist eine Geige.
Das gleiche gilt für die Unterstützung von Floats:
%Vor%Und hier ist eine andere Geige.
Update: Obwohl Sie dies möglicherweise nicht benötigen, hier ist eine Lösung, die ein führendes Minuszeichen erlaubt.
%Vor%Und nun eine endgültige Lösung, die nur gültige Dezimalstellen (einschließlich Gleitkommazahlen und negative Zahlen) zulässt:
%Vor%Sie können die HTML5-Eingabetypnummer verwenden, um nur Zahleneinträge zu beschränken:
%Vor%Dies funktioniert nur im HTML5-Beschwerde-Browser. Stellen Sie sicher, dass der Doctyp Ihres HTML-Dokuments:
ist %Vor%Für allgemeine Zwecke können Sie JS-Validierung wie folgt haben:
%Vor%Wenn Sie Dezimalzahlen zulassen wollen, ersetzen Sie die "if-Bedingung" durch diese:
%Vor%Tags und Links html validation user-input