nur zahlen eingeben in input feld mit html?
Wie kann ich es verhindern, das man in ein input feld buchstaben und negative zahlen eigeben kann? bitte mit html
5 Antworten
Verhindern kann man das sowieso nicht, da der Nutzer HTML in seinem Browser immer manipulieren kann. Aber für Ottonormal-Nutzer sollte der Input-Type "number" ausreichend sein, da kannst du auch Ranges einstellen:
https://www.w3schools.com/html/tryit.asp?filename=tryhtml_input_number
PS: Immer die eingegebenen Daten serverseitig validieren!
Mein Firefox behandelt eine invalide Eingabe wie ein leeres Feld mit require-Attribut. Also werden die Daten erst gesendet wenn die Eingabe valid ist.
(aber wie gesagt ist es versierten Nutzern prinzipiell immer möglich Daten nach eigenem Belieben zu bearbeiten und abzuschicken)
Indem du ein input-Element nutzt und die Attribute min und ggf. max auf entsprechende Werte setzt. Das reicht aber nicht aus, du wirst zusätzlich JavaScript einsetzen müssen.
Hier mal ein Beispiel, das aber sicherlich auch noch nicht perfekt ist: https://jsfiddle.net/c1Laz3qo/1/ Wenn du dort z. B. 0 eingibst, wird 1 gesetzt.
So oder so sollten Usereingaben auch serverseitig noch einmal validiert werden, da sie clientseitig praktisch immer manipuliert werden können.
<input type="number">
Denn mit javascript o.Ä. checken, ob es größer 0 ist. HTML fällt mir nichts ein auf die schnelle..
Hi Kann so gelöst werden:
<form>
Quantity (between 1 and 5):
<input type="number" name="quantity" min="1" max="5">
</form>
Das bietet nur sehr geringen Schutz, man kann z. B. im Firefox dennoch den Wert 0 eingeben. Testen kannst du das hier: https://jsfiddle.net/c1Laz3qo/
Browser übergreifend ist es besser mit einem Framework wie angular zu arbeiten, hier ng-Pattern nutzen:
http://learnkode.com/Examples/Angular/Ng-Pattern
Natürlich mehr Aufwand und JavaScript know how notwendig
Im input tag folgendes schreiben:
type="number" min="0"
Type gibt die Art des Inputs an und min sagt, dass der nicht in den Minus Bereich darf(also der mindest wert)
Ja, dann muss man aber JavaScript verwenden und es war nur nach HTML CSS und PHP gefragt
Doch, du kannst (zumindest z. B. im Firefox) auch negative Werte eingeben. Du kannst sie nur nicht über die kleinen Buttons auswählen. Testen kannst du das hier: https://jsfiddle.net/c1Laz3qo/
Min und max haben allerdings nur eine sehr rudimentäre Wirkung. Gib z.B. hier mal -1 ein: https://jsfiddle.net/c1Laz3qo/