Email Eingabe überprüfen

Achtung! Eine Überprüfung auf eine gültige Emailadresse in einem einzeiligen Eingabefeld ist heutzutage nicht mehr erforderlich, da die Browser das schon automatisch machen, wenn es ein input type="email" ist

Formularfelder überprüfen Sie strassenprogrammierer

Script im Head
<script language="JavaScript" type="text/JavaScript">
function checkmail() {
var ausdruck=/^[\w-\.]+@[\w-\.]+\.[a-zA-Z]{2,3}$/;
var email=document.form1.email.value;

if(ausdruck.test(email)==false||email.length<7){
alert("Sie haben keine richtige Email Adresse eingegeben.");
return false;
}

}
</script>


Geben Sie hier Ihre Email Adresse ein:


Formular Code
<form action="mailto:burg@on-design.de" method="post" name="form1" onSubmit="return checkmail()">
Geben Sie hier Ihre Email Adresse ein:
<input name="email" type="text" id="email" size="20" maxlength="20">
<input type="submit" name="Submit" value="Abschicken">
</form>


Hier wird die Email Angabe überprüft, ob ein @ Zeichen vorkommt, ob verbotene Sonderzeichen enthalten sind, ob mindestens ein Punkt vorhanden ist und ob die Ländererkennung mindestens 2 aber nicht mehr als 3 Zeichen hat.
Um das zu testen wurde im Head das Javascript mit einer Funktion namens checkmail() angelegt. Diese Funktion wird im Formtag mit dem EventHandler onSubmit aufgerufen, jedoch wird außerdem durch return, die eigentliche Aktion des Formulars erst mal gestoppt. onSubmit="return checkmail()"

Die Funktion
Unter der Variablen Ausdruck wird mit Platzhaltern ein String auf das Vorhandensein bestimmter Zeichen und Zeichenfolgen überprüft, dazu später mehr.
If-Struktur
Mit der test() Methode wird ein String auf Übereinstimmung geprüft. Außerdem wird noch geprüft, ob die Eingabe im Email Feld mindestens 7 Zeichen hat. Wenn hier false zurückgeben wird, erscheint das Alert Fenster und mittels return false; wird die Abschicken Aktion des Formulars abgebrochen.
Such Ausdruck
Es handelt sich hierbei um einen sogenannten regulären Ausdruck. Reguläre Ausdrücke gibt es auch in andern Programmiersprachen, wobei kleine Unterschiede auftreten können. Siehe hier eine Liste regulärer Ausdrücke.
ausdruck=/^[\w-\.]+@[\w-\.]+\.[a-zA-Z]{2,3}$/;
Der gesamte Ausdruck wird in /Slash Zeichen eingeschlossen. Der Beginn der Zeichenfolge wird mit ^Zeichen angezeigt und das Ende mit dem $ Zeichen.
[\w-\.]+
\w steht für alle alphanumerischen Zeichen, also a-z und A-Z und 0-9. Dadurch sind alle Sonderzeichen öäüß etc ausgeschlossen.
- Es folgt ein Bindestrich, denn der darf in Emails vorkommen.
\. steht für Punkt.
Das Ganze wird in eckigen Klammern eingeschlossen und mit Plus Zeichen versehen. Das bedeutet, dass eines der definierten Zeichen mindestens einmal vorkommen muß, die Zeichen können aber beliebig oft und in beliebiger Reihenfolge vorhanden sein.
@
ein nicht in Klammern eingeschlossenes Zeichen bedeutet, dass dieses Zeichen an dieser Stelle einmal vorkommen muss.
[\w-\.]+\.
Es folgt wieder das oben beschreibene Schema, dann ein Punkt, der vorkommen muß.
[a-zA-Z]{2,3}
Zum Schluss bei der Ländererkunng dürfen nur Buchstaben ohne Sonderzeichen vorkommen, davon mindestens 2 aber nicht mehr als 3.


weitere Formularthemen
menue mathe Hintergrundfarbe Formularfelder auslesen


 


Javascript Tipps