Problem mit Funktion welche HTML-Formularfelder auf Eingaben prüft

  • Themenstarter Themenstarter beko
  • Beginndatum Beginndatum
B

beko

Guest
Moin,
IE 5 und 6 geben mir bei aktiven Debugger eine äußerst hässliche Fehlermeldung aus. Da dies leider auf einigen Systemen default ist muss diese Meldung verschwinden ;) Der IE meint zu dem Thema entweder "Laufzeitfehler" oder "ungültiges Zeichen". Interessanterweise funktionierts dann aber doch. Die Javakonsolen von Mozilla oder Firebird schweigen sich hingegen aus und stellen keinen Fehler fest.

Diese Funktion möchte ich auf unserer Firmenwebseite für ein Bewerbungsformular verwenden. Sie checkt bei Aufruf die entsprechenden Fehler ab. Also, wo liegt der Hund begraben?

Aufruf von HTML-Seite (nicht durch $name irritieren lassen, das gehört so ;) ):
Code:
<script src="$home/checkbewerb.js" type="text/javascript"></script>
[....]
<form action="$home/sendmail.php" enctype="multipart/form-data" method="post" name="Formular" onSubmit="return chkFormular()">
checkbewerb.js:
Code:
function chkFormular()
{
 if(document.Formular.Nachname.value == "")  {
   alert("Bitte geben Sie Ihren Nachnamen ein!");
   document.Formular.Nachname.focus();
   return false;
  }
 if(document.Formular.Vorname.value == "")  {
   alert("Bitte geben Sie Ihren Vornamen ein!");
   document.Formular.Vorname.focus();
   return false;
  }
 if(document.Formular.Straße.value == "") {
   alert("Bitte geben Sie Ihre Straße ein!");
   document.Formular.Straße.focus();
   return false;
   }
 if(document.Formular.Ort.value == "") {
   alert("Bitte geben Sie Ihren Wohnort ein!");
   document.Formular.Ort.focus();
   return false;
   }
 if(document.Formular.eMail.value == "") {
   alert("Bitte geben Sie Ihre E-Mail-Adresse ein!");
   document.Formular.eMail.focus();
   return false;
  }
 if(document.Formular.eMail.value.indexOf('@') == -1) {
   alert("Ihre E-Mail-Adresse ist ungültig!");
   document.Formular.eMail.focus();
   return false;
  }
  if(document.Formular.Telefon.value == "")
   {
   alert("Bitte geben Sie Ihre Telefonnummer ein!!");
   document.Formular.Telefon.focus();
   return false;
   }
  if(document.Formular.Geburtstag.value == "")
   {
   alert("Bitte geben Sie Ihr Geburtstag ein!");
   document.Formular.Geburtstag.focus();
   return false;
   }
  if(document.Formular.Gehaltsvorstellung.value == "")
   {
   alert("Bitte geben Sie Ihre Gehaltsvorstellung ein!");
   document.Formular.Gehaltsvorstellung.focus();
   return false;
   }
  if(document.Formular.Eintrittsdatum.value == "")
   {
   alert("Bitte geben Sie Ihren frühst möglichen Eintrittstermin ein!");
   document.Formular.Eintrittstermin.focus();
   return false;
   }
}
 
liegt vielleicht daran, dass du mit deinen bezeichnungen durcheinander gekommen bist

if(document.Formular.Eintrittsdatum.value == "")
{
alert("Bitte geben Sie Ihren frühst möglichen Eintrittstermin ein!");
document.Formular.Eintrittstermin.focus();
return false;
}
 
Hm - Mift. Den Abschnitt habe ich erst gestern erweitert. Danke für den Hinweis aber der Fehler bleibt leider bestehen. Interessant aber dass die Java-Konsole hier drauf nicht reagiert hat X(
 
poste mal bitte den code des gesamten formulars und beschreibe wann der fehler genau auftritt damit man das mal selber nachvollziehen und sich den fehler angucken kann
 
Gah - ich hab den Fehler gefunden o_0 Sowas beknackes Hackedoofes aber auch o_0

Java arbeitet intern ja mit Unicode, also mache ich mir nie viele Gedanken um die Namen meiner Variablen. HTML macht dies leider nicht und siehe da wir haben da die Zeile document.Formular.Straße.value

Nach Änderung auf dem Formular und im Code (document.Formular.Strasse.value) rennt alles X(

Gna... gna.. gna...

Danke, dein Post hat mich auf die richtige Spur gebracht ;)

Sowas blöööödes ;(
 
Zurück
Oben