direkt bei der eingabe prüfen ob ein feld nur zahlen erhällt

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
localhost
Mitglied
Beiträge: 64
Registriert: 28.01.2007 20:06
Wohnort: localhost

direkt bei der eingabe prüfen ob ein feld nur zahlen erhällt

Beitrag von localhost »

hi, also ich weiß ja wie man prüft ob ein feld nur zahlen enthällt, aber bei allen methoden, die ich kenne, wird der eingegebene wert erst nach dem absenden der eingabe überprüft. ich hätte nun gerne ein input feld, bei dem man nur zahlen eingeben kann und wenn man etwas anderes als eine zahl versucht einzutippen, dass diese zeichen erst gar nicht im input feld erscheinen, also einfach ignoriert werden und zwar direkt bei der eingabe. lässt sich soetwas realisieren?
ich habe meinen alten benutzernamen den ich vergessen hatte wiedergefunden, diesen account nutze ich nciht mehr
Benutzeravatar
Banger
Ehemaliges Teammitglied
Beiträge: 375
Registriert: 03.05.2005 21:53
Wohnort: Düsseldorf
Kontaktdaten:

Beitrag von Banger »

Sischadat.

Code: Alles auswählen

<input type="text" onkeyup="this.value=this.value.replace(/[^\d]/, '');" />
ultracoder

Beitrag von ultracoder »

erstmal danke, aber das script funktioniert nicht richtig.


wenn man nur einmal einen buchstaben eintippt gehts noch, aber wenn ich kurz z.b. das "d" durchgedrückt lasse, sodass im eingabefeld z.b. 6 mal "d" steht, dann wird nur das letze "d" ersetzt und die anderen 5 bleibe im eingabefeld stehen.
Benutzeravatar
Banger
Ehemaliges Teammitglied
Beiträge: 375
Registriert: 03.05.2005 21:53
Wohnort: Düsseldorf
Kontaktdaten:

Beitrag von Banger »

ultracoder hat geschrieben:wenn man nur einmal einen buchstaben eintippt gehts noch, aber wenn ich kurz z.b. das "d" durchgedrückt lasse, sodass im eingabefeld z.b. 6 mal "d" steht, dann wird nur das letze "d" ersetzt und die anderen 5 bleibe im eingabefeld stehen.
Auch kein Problem - gestalten wir die RegEx halt global. ;-)

Code: Alles auswählen

<input type="text" onkeyup="this.value=this.value.replace(/[^\d]/g, '');" />
ultracoder

Beitrag von ultracoder »

ok danke, das geht schonmal soweit, kann man das denn auch so machen, dass die buchstaben erst gar nicht angezeigt werden, also einfach beim eintippen direkt ignoriert werden und auch nicht kurzzeitig im eingabefeld erscheinen?
Antworten

Zurück zu „Coding & Technik“