Texteingabe im Eingangstyp="Nummer" deaktivieren

8

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?

    
coder 19.01.2014, 09:24
quelle

2 Antworten

15

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%

3. Geige

Und nun eine endgültige Lösung, die nur gültige Dezimalstellen (einschließlich Gleitkommazahlen und negative Zahlen) zulässt:

%Vor%

Endgültige Geige

    
still_learning 19.01.2014, 09:35
quelle
4

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%

Quelle: HTML-Texteingabe erlaubt nur numerische Eingabe

    
Simpal Kumar 19.01.2014 10:21
quelle

Tags und Links