Texte, Projekte und Fundsachen rund um Medien, Bildung und Computer
www.dirk-hoeschen.de
PLZ und Email in Formularfeldern überprüfen mit Javascript
Erstellt am: 08 Feb. 2009

Gültigkeitsprüfungen für Formularfelder gibt es viele. Der Befehl match() wird dabei seltsamerweise selten benutzt obwohl damit Überprüfungen als Einzeiler möglich sind. Ich stelle eine kleine Funktion vor, die schnell für fast alle Gültigkeitsprüfungen verwendet werden kann.

Alle aktuellen Browser kennen den Befehl match(). Der überprüft anhand von Regulären Ausdrücken (Regular-Expressions) einen Text und gibt entweder NULL oder den Text zurück.

Ein Beispiel ist die Überprüfung von Postleitzahlen. Die bestehen in Deutschland aus 5 Zahlen.

Ein Beispiel:

var text ="12345";
alert(text.match(/^[0-9]{5}$/));

Das Beispiel gibt nur bei exakt 5 Ziffern einen String aus. Wenn man z.B. ein Postleitzahlenfeld direkt nach der Eingabe überprüfen wollte, reicht folgender Befehl.

<input type="text" name="plz" onblur="if (!this.value.match(/^[0-9]{5}$/)) alert('Die Postleitzahl ist ungültig');" >

Im folgenden Codebeispiel prüft die Funktion testStr() je nach Aufruf die Gültigkeit von Texten, Emails oder Postleitzahlen.

.<script type="text/javascript">
 
function testStr(tString,type) {
    switch (type) {
    case "email":
        return !(tString.match(/([a-z0-9._-]+@[a-z0-9._-]+.[a-z]{2,4})/gi)) ? false : true;
    break;
    case "plz":
        return !(tString.match(/^[0-9]{5}$/)) ? false : true;   
    break;
    default:
       return !(tString.match(/([a-z0-9.,;:öäüß _-])/gi)) ? false : true;
     }
  }

// falsche email testen
alert(testStr("ma@dirk hoeschen.de","email"));
// falsche plz testen
alert(testStr("1234","plz"));
// leeren oder falschen string testen
alert(testStr("","plz"));
</script>
 

Das ist natürlich nur eine Anregung. Reguläre Ausdrücke können viel komplexer sein. Die Überprüfung mit Javascript ersetzt natürlich auch nicht die Kontrolle der Eingabe nach dem Absenden. Da Phyton, Perl oder PHP natürlich auch mit Regulären Ausdrücken umgehen können, kann man die gleichen Formeln einsetzen.

Links

  1. Ein Beispiel aus einem aktuellen Projekt (PLZ in der Suche)
  2. Reguläre Ausdrücke auf Wikipedia
  3. Der Befehl match() auf SelfHTML

 

Artikel Bookmarken bei...
Mister-Wong Webnews Yigg Alltagz Infopirat Delicious Furl Linkarena Yahoo Google

0 Kommentar(e)

Keine Kommentare bis jetzt.

Beitrag kommentieren

Ich freue mich jederzeit über Fragen, Anmerkungen und Kritik. Also gebt euch einen Ruck und kommentiert diesen Artikel.

Name
eMail optional für Antworten: wird nicht veröffentlicht!
Webseite optional
Kommentar
Kontrollcode
Spamvermeidung: bitte den Code im Bild eingeben
 

* zur Übersicht

Aktuelle Projekte

MBE Druckprofis Immoblienmakler Berlin - Hauptstadtmakler Lehranstalt für Gartenbau und Floristik Großbeeren Kunstleihhaus computer-daten-netze : feenders.de