JavaScript Form Beispiel 4: Form Button

In HTML-Formularen können Buttons nicht allein als Reset- oder Submit-Button verwendet werden, um Formulardaten zu löschen oder das Versenden der Daten an den Webserver einzuleiten. Prinzipiell können Buttons auch zu anderen Zwecken verwendet werden: Beispielsweise zum Starten einer dem Versenden der Eingabedaten vorangehenden Datenprüfung. Anders als bei Reset- und Submit-Buttons, bei denen das Typ-Attribut des Input-Elements mit reset bzw. submit belegt wird, muss das Typ-Attribut bei einem anderweitig verwendeten Button mit button belegt werden. Ansonsten werden die Eingabefelder im Formular auf die selbe Weise definiert.

Im folgenden Script-Code wird ein Formular definiert, welches aus einem Eingabeelement vom Typ Text und einem normalen Button besteht. Das Textfeld fordert den Benutzer auf eine E-Mail-Adresse einzugeben und der Button leitet eine entsprechende Gültigkeitsprüfung ein. Der Button wird direkt in der Buttondefinition mit einem Event-Handler – der Prüffunktion checkEmail – verbunden.

Das unten stehende Beispiel nutzt wieder ein JavaScript Event, welches ausgelöst wird, sobald der Benutzer auf den Button geklickt hat. Hierbei handelt es sich um das bereits beschriebene JavaScript-Event onClick. Der auf die Erstellung des Formulars folgende JavaScript Code definiert den verwendeten Event-Handler, der zur Gültigkeitsprüfung der eingegebenen E-Mail-Adresse dient. Zu Beginn der Funktion checkEmail wird auf die Value-Eigenschaft des Textfeldes zugegriffen um diese in einer String-Variablen zwischenzuspeichern. Auch hier erfolgt der Zugriff auf das Formular und dessen Felder mittels Document Object.

Das darauf folgende If-Statement dient dazu, eine der Eingabe entsprechende Ausgabe in einer Dialogbox zu tätigen. Zu diesem Zweck bedient sich die Funktion der zur Darstellung einer Dialogbox gedachten Methode Alert(). Sie gehört zur Schnittstelle des JavaScript Window-Objekts, über das auch andere Dialoge aufgerufen werden können. Beachten Sie hierzu auch die Beispiele zu den Dialogen Confirm, Prompt und Print.

Im Beispiel wird mit der Methode match des vordefinierten Objekts String entschieden, welche Ausgabe erfolgen soll. Match prüft dabei das entsprechende String auf Übereinstimmung mit dem der Methode übergebenen regulären Ausdruck. Hier wird ein regulärer Ausdruck zur (syntaktischen) Erkennung gültiger E-Mail-Adressen verwendet.

<form name="formular1" method="get">
  E-Mail-Adresse <input name="email" type="text" />
  <input type="button" onclick="checkEmail()" value="E-Mail-Adresse pr&uuml;fen" />
  <script language="javascript" type="text/javascript">
  <!-- // JavaScript-Bereich für ältere Browser auskommentieren
  // Funktion zur Gültigkeitsprüfung einer E-Mail-Adresse.
  // Dabei wird lediglich das Format der Adresse geprüft.
  // Nicht geprüft wird dagegen, ob die angegebene Adresse
  // existiert.
  function checkEmail () {
    // Variable zur Zwischenspeicherung der im Textfeld eingegebenen
    // Eingabedaten.
    var adr = document.formular1.email.value;
    // Prüfung des Eingabestrings auf ein gültiges Format.
    // Der reguläre Ausdruck sollte alle gültigen E-Mail-Adressen
    // erkennen.
    if (adr.match (/^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$/))
      // Trifft der reguläre Ausdruck zu, so handelt es sich
      // um eine gültige E-Mail-Adresse und es folgt eine
      // entsprechende Ausgabe in einer Alert-Box.
      alert ('Format der E-Mail-Adresse ist korrekt');
    else
      // Ansonsten wird auf eine ungültige Eingabe hingewiesen.
      alert ('Format der E-Mail-Adresse ist nicht korrekt');
  }
  // -->
  </script>
</form>
E-Mail-Adresse
Letzte Posts aus unserem Forum

Script Schrift vergrößern

Hallo wollte gerade das Script für die Schriftvergrößerung testen, aber irgendwie bekomme ich das nicht hin. Habe eine Joomla Website und dort die ... » mehr

von Gast am Donnerstag, 22. April 2010 13:32 in JavaScript - bisher 1 Antwort
Letzter Beitrag: Donnerstag, 22. April 2010 18:05 von alm

Hallo, damit kann man nicht allzu viel anfangen. Soviel ich weiss kann es zuweilen Probleme mit Tabellen-Layouts geben. Dort werden die ... » mehr

Javascript Schriftengröße: Problem bei URL-Übergabe im IE8

Hallo, ich hab eben das Javascript zur Schriftengröße eingebaut, klappt auch wunderbar auf Firefox, aber der IE 8 hat folgendes Problem: - wenn ich ... » mehr

von horst1234 am Dienstag, 23. Februar 2010 13:06 in JavaScript - bisher 1 Antwort
Letzter Beitrag: Dienstag, 23. Februar 2010 14:07 von horst1234

Ich hab das charset im Header geändert (wie in der beispiel.html), und schon klappt es ... » mehr

Dynamisches einfügen von Zeilen in eine Spalte

Hallo, ich möchte gerne eine Zeile zwischen zwei andere Zeilen einfügen. Leider klappt folgender Versuch noch nicht so richtig. Vielleicht kann mir ... » mehr

von Bluecaspar am Mittwoch, 10. Februar 2010 18:09 in JavaScript - bisher 2 Antworten
Letzter Beitrag: Donnerstag, 11. Februar 2010 10:37 von Bluecaspar

Ja genau, das war der Fehler. Vielen Dank Alex. Hier der korrigierte Code: <html> <head> <title> Test ... » mehr

Fenster in Frame erzeugen

Hallo, ich würde gerne ein Fenster in einer Webseite erzeugen. Das Fenster sollte dabei auf ein Frame begrenzt sein, sich also nicht aus diesen ... » mehr

von Bluecaspar am Dienstag, 9. Februar 2010 13:57 in JavaScript - bisher 2 Antworten
Letzter Beitrag: Mittwoch, 10. Februar 2010 09:32 von Bluecaspar

Ja hervorragend, dass ist genau das was ich möchte. Danke ... » mehr

Problem: Kombination mit Lightbox 2

Hallo, ich bin gerade dabei die Galerie mit der Lightbox 2 zu verknüpfen, da ich die Bilder im Vollformat gerne in diesem schicken aufpoppenden ... » mehr

von GoPeter am Montag, 16. November 2009 23:38 in JavaScript - bisher 16 Antworten
Letzter Beitrag: Mittwoch, 18. November 2009 00:32 von GoPeter

Soo...hat lange gedauert...aber jetzt ist es endlich ... » mehr



¬ Insolvenzrecht