JavaScript Fehlermeldung

L

librarian

Mitglied
Thread Starter
Dabei seit
21.08.2005
Beiträge
36
Reaktionspunkte
0
Hallo,
habe ein Formular (hier gekürzt), die Prüfung per JavaScript funktioniert nicht. Fehlermeldungen in der JavaScript Konsole:

Fehler: missing ) after argument list
Quelldatei: //localhost/hausarbeit_php/eingabeformular.html
Zeile: 165, Spalte: 127
Quelltext:
if(!confirm('Sollten diese Angaben Fehler enthalten, klicken Sie bitte auf Abbrechen und korrigieren Sie sie im Formular: " + 'vorname' + " " + 'name' + " / " + 'b_day' + " / " + 'mat_nr' + " / " + 'adresse' + " / " + 'plz' + " " + 'wohnort' + " / " + 'la

=> Ich kann keine fehlende ) im Skript finden. Jemand von euch?

Fehler: chkeingabeformular is not defined

=> Was ist damit genau gemeint? Die function chkeingabeformular ist doch im HEAD definiert.

HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD
HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html;
  charset=iso-8859-1">
  <title>Studentendaten</title>
  <LINK REL="stylesheet" HREF="hausarbeit.css" TYPE="text/css">
  <script type="text/javascript">
       function chkeingabeformular()
                {
                 if(document.eingabeformular.vorname.value == ""){
                 alert("Sie haben den Vornamen nicht angegeben!");
                 document.eingabeformular.vorname.focus();
                 return false;
                 }
                 var chkZ = -1;
                 for(i=0;i<document.eingabeformular.vorname.value.length;++i)
                 if(document.eingabeformular.vorname.value.charAt(i) < "0"
                 || document.eingabeformular.vorname.value.charAt(i) > "9")
                 chkZ = 1;
                 if(chkZ == -1) {
                 alert("Bitte im Vornamen-Feld keine Zahlen eingeben!");
                 document.eingabeformular.vorname.focus();
                 return false;
                 }
                 if(document.eingabeformular.name.value == ""){
                 alert("Sie haben den Nachnamen nicht angegeben!");
                 document.eingabeformular.name.focus();
                 return false;
                 }
                 var chkZ = -1;
                 for(i=0;i<document.eingabeformular.name.value.length;++i)
                 if(document.eingabeformular.name.value.charAt(i) < "0"
                 || document.eingabeformular.name.value.charAt(i) > "9")
                 chkZ = 1;
                 if(chkZ == -1) {
                 alert("Bitte im Nachnamen-Feld keine Zahlen eingeben!");
                 document.eingabeformular.name.focus();
                 return false;
                 }
                

       var vorname = document.eingabeformular.vorname.value;
       var name = document.eingabeformular.name.value;
     
if(!confirm("Sollten diese Angaben Fehler enthalten, klicken Sie bitte auf Abbrechen und korrigieren Sie sie im Formular: " + vorname + " " + name + " / Durch anklicken von OK werden die Daten in der Datenbank abgespeichert."))return false;
else return true;
      }
       </script>
</head>

<body>
<form name="eingabeformular"
      action="eingabe.php" method="post"
      onSubmit="return chkeingabeformular()">
<h1 align="center">Studentische Daten</h1>
  <p align="center">Bitte f&uuml;llen Sie alle folgenden Felder mit den
entsprechenden Daten aus:</p>
<TABLE align="center" cellpadding="2" cellspacing="0">
    <TR>
      <TD><label><p id="tabelle" >Vorname</p></label></TD>
      <TD><input type="text" size="40" name="vorname"></TD>
    </TR>
    <TR>
      <TD><label><p id="tabelle" >Name</p></label></TD>
      <TD><input type="text" size="40" name="name"></TD>
    </TR>
    <TR>
      <TD><label></label></TD>
      <TD> <input type="submit" name ="submit" value="Speichern"></TD>
   </TR>
  </TABLE>
  <p id="tabelle" align="center">*Geben Sie das Geburtsdatum bitte ohne Punkte, o.a., wie folgt ein: <br>JJJJMMTT (z.B. 1. M&auml;rz 1982: 19820301)<br>**Geben Sie die vollst&auml;ndige Telefonnummer mit Vorwahl bitte ohne Leerstellen<br> oder trennende Zeichen, wie Kommata, Gedanken- oder Schr&auml;gstriche an.</p>
</form>

</body>
</html>
 
hi. lass mal beim formular das "return" in
onSubmit="return chkeingabeformular()">
weg.
also mach
onSubmit="chkeingabeformular()">
 
Jetzt funktioniert's wieder, auch mit return. Sollte ich das lieber weglassen?
 
ich hab dasreturn an der stelle noch nie gesehen. könnte zu kompatibilitätsproblemen mit anderen browsern führen. kann aber auch ganz konform sein .. so gut kenn ich JS dann doch nicht :)
 
Das return muss dort sein, damit das Formular (nicht) abgesendet wird.

onsubmit="return true" ->Das Formular wird abgesendet.
onsubmit="return false" -> Das Formular wird nicht abgesendet.
 
Zurück
Oben Unten