Fehler im JavaScript für Formularprüfung

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
Benutzeravatar
konne
Mitglied
Beiträge: 250
Registriert: 26.08.2004 15:30
Kontaktdaten:

Fehler im JavaScript für Formularprüfung

Beitrag von konne »

Hallo,

kann mir vielleicht mal jemand verraten, wo der Fehler in folgendem Code-Schnipsel liegt. Hatte mit JavaScript bisher nicht soviel am Hut und kenne daher nicht die genaue Syntax.

Code: Alles auswählen

<script type="text/javascript">
  function formular_pruefen() {
    f = document.formular;
    t = f.t.value;
    m = f.m.value;
    j = f.j.value;
    result = true;
    text = '';
    if (t == '' || m == '' || j == '') {
      result = false;
      text += '- Datum fehlt!\n';
    }
    else {
      tmj = t + '.' + m + '.' + j;
      dateform = /\d\d\.\d\d\.\d\d\d\d/;
      if(!tmj.match(dateform) {
        result = false;
        text += tmj + '- falsches Datumsformat!\n';
      }
      else {
        var heute = new Date();
        var datum = new Date(f.j.value,f.m.value,f.t.value);
        if(datum.getTime() > heute.getTime()) {
          result = false;
          text += '- Datum liegt in der Zukunft!\n';
        }
      }
    }
    if (f.start.value == '') {
      result = false;
      text += '- Start fehlt!\n';
    }
    if (result == false) {
      alert(text);
    }
    return result;
  }
</script>

<?PHP
    echo '<form action="'.$PHP_SELF.'" method="post" name="formular" onSubmit="return formular_pruefen()">';
    echo '<table class="trans"><tr>';
    echo '<td class="t_norm"><nobr><input type="Text" name="t" size="1" maxlength="2">.<input type="Text" name="m" size="1" maxlength="2">.<input type="Text" name="j" size="2" maxlength="4"></td>';
    echo '</tr><tr>';
    echo '<td class="t_norm"><input type="Text" name="start" maxlength="11"></td>';
    echo '</tr><tr>';
    echo '<td class="t_norm"><center><input class="input" type="submit" value="Submit"></center></td>';
    echo '</tr></table>';
    echo '</form>';
?>
Benutzeravatar
konne
Mitglied
Beiträge: 250
Registriert: 26.08.2004 15:30
Kontaktdaten:

Beitrag von konne »

Nanu,

ist denn kein Experte in Sachen JavaScript zugange?
Jensemann
Ehemaliges Teammitglied
Beiträge: 2549
Registriert: 25.02.2002 01:00

Beitrag von Jensemann »

konne hat geschrieben:Nanu,

ist denn kein Experte in Sachen JavaScript zugange?
Wahrscheinlich haben die Experten keine Lust sich die Mühe zu machen den Fehler zu suchen, wenn du dir nichtmal die Mühe machst eine Fehlermeldung zu posten, geschweige denn Angaben dazu machst was das Script tuen soll und was es tatsächlich macht oder eben nicht macht.
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

ggf. mal http://www.getfirebug.com/ anschauen.

Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Benutzeravatar
konne
Mitglied
Beiträge: 250
Registriert: 26.08.2004 15:30
Kontaktdaten:

Beitrag von konne »

PhilippK hat geschrieben:ggf. mal http://www.getfirebug.com/ anschauen.

Gruß, Philipp
Werd ich mir gleich mal installieren.

Aber noch einmal kurz zum Script:
Ich habe dort ein Formular Namens "formular" in dem ein Datum (Tag=t, Monat=m und Jahr=j) sowie ein Textfeld (start) auszufüllen sind. Das JavaScript "formular_pruefen()" soll onSubmit die Eingaben prüfen und ggf. Fehlermeldungen ausgeben.

Sind alle Datumsfelder gefüllt?
Sind in den Datumsfeldern nur Zahlen?
Liegt das eingegebene Datum in der Zukunft?
Ist das start-Feld gefüllt?

Vielleicht kann mir mit dieser gewünschten Funktionsbeschreibung jemand beim Aufspüren des Fehlers behilflich sein oder einen verbesserten Algorithmus nennen.
Benutzeravatar
konne
Mitglied
Beiträge: 250
Registriert: 26.08.2004 15:30
Kontaktdaten:

Beitrag von konne »

konne hat geschrieben:Werd ich mir gleich mal installieren.
Klasse Tool - Fehler in 0,nix gefunden.
Eine verdammte Klammer hatte gefehlt.
Antworten

Zurück zu „Coding & Technik“