Hallo, ich bin gerade bei einer Fehlerabfrage für ein Formular nach dem Muster:
function Validator(theForm)
{
if (theForm.vorname.value == "")
{
alert("Geben Sie einen Wert in das Feld \"Vorname\" ein.");
theForm.vorname.focus();
return (false);
}
if (theForm.nachname.value == "")
{
alert("Geben Sie einen Wert in das Feld \"Nachname\" ein.");
theForm.nachname.focus();
return (false);
}
if (theForm.strasse.value == "")
{
alert("Geben Sie einen Wert in das Feld \"Strasse\" ein.");
theForm.strasse.focus();
return (false);
}
if (theForm.nummer.value == "")
{
alert("Geben Sie einen Wert in das Feld \"Hausnummer\" ein.");
theForm.nummer.focus();
return (false);
}
return (true);
}
Fehlerabfrage funktioniert auch. Allerdings habe ich festgestellt: wenn im Formular eines der hier abgefragten Formularfelder (z.B. "Nachname") nicht existiert (z.B. auskommentiert ist), wird die ganze Funktion nicht weiter durchlaufen, sondern das Formular wird abgeschickt. Warum ist das so? Ich dachte immer, erstmal wird die gesamte Funktion durchlaufen und wenn ein Feld nicht vorhanden ist, erstaml die if-Abfrage für das nächste Feld durchgeführt. Oder wie funktioniert das?
Grüße Trikatz
function Validator(theForm)
{
if (theForm.vorname.value == "")
{
alert("Geben Sie einen Wert in das Feld \"Vorname\" ein.");
theForm.vorname.focus();
return (false);
}
if (theForm.nachname.value == "")
{
alert("Geben Sie einen Wert in das Feld \"Nachname\" ein.");
theForm.nachname.focus();
return (false);
}
if (theForm.strasse.value == "")
{
alert("Geben Sie einen Wert in das Feld \"Strasse\" ein.");
theForm.strasse.focus();
return (false);
}
if (theForm.nummer.value == "")
{
alert("Geben Sie einen Wert in das Feld \"Hausnummer\" ein.");
theForm.nummer.focus();
return (false);
}
return (true);
}
Fehlerabfrage funktioniert auch. Allerdings habe ich festgestellt: wenn im Formular eines der hier abgefragten Formularfelder (z.B. "Nachname") nicht existiert (z.B. auskommentiert ist), wird die ganze Funktion nicht weiter durchlaufen, sondern das Formular wird abgeschickt. Warum ist das so? Ich dachte immer, erstmal wird die gesamte Funktion durchlaufen und wenn ein Feld nicht vorhanden ist, erstaml die if-Abfrage für das nächste Feld durchgeführt. Oder wie funktioniert das?
Grüße Trikatz