Marco Strauss: Formularerkennungsproblem...

Hallo,

ich zeige kurz den Quellcode an:

<html><head>
<script language="JavaScript">
<!--
function chkFormular()
{
if(document.Formular.Firma.value == "")
{
  alert("Geben Sie bitte Ihren Firmennamen ein!");
         document.Formular.Firma.focus();
  return false;
}
}
//-->
</script>
</head>

<form action="http://www.IhrName.de/cgi-bin/feedback.cgi" method="POST" onSubmit="return chkFormular()">
           <input type="hidden" name="FBMAIL" value="mstrauss@topmail.de">
           <input type="hidden" name="FBSUBJECT" value="FORMULAR: Kontakt-Seite">
           <input type="hidden" name="FBURL" value="http://service.schlund.de/feedback/danke_bsp.html">

<input type="text" name="Firma" size="35">

</form>
</html>

Das Befehl "onSubmit="return chkFormular()" werden igioniert, und dies nicht beachtet... weiss jemand warum? Vielleicht habe ich falsch programiert? Ich meine, wenn dort nicht eingegeben ist, müsste eigentlich ein javascript-Fehlermeldung kommen, so das aufgefordert wird, dies einzutragen! Doch, dies wird igioniert, und leere Felder wird mitgeschickt... :-(

  1. Das Befehl "onSubmit="return chkFormular()" werden igioniert, und dies nicht beachtet... weiss jemand warum? Vielleicht habe ich falsch programiert? Ich meine, wenn dort nicht eingegeben ist, müsste eigentlich ein javascript-Fehlermeldung kommen, so das aufgefordert wird, dies einzutragen! Doch, dies wird igioniert, und leere Felder wird mitgeschickt... :-(

    Hallo Marco,

    du musst schrittweise überprüfen wo er hingeht(debugen).
    1. bei onSubmit ein alert(); hineinsetzen. Wenn er das macht
    2. in die function vor dem if ein alert();
    wenn er das alles macht ist es die if-anweisung.

    Ich hab jetzt keine Zeit das mal zu testen aber lass mal das return vor chkFormular() in onSubmit weg.

    Viel Spass beim debugen

    Alex

    1. danke, für die Tips !!!! Dabei hat mir auch schon viel geholfen!!! Wegen:

      if(document.Formular.Firma.value == "")  
      

      das Wort: "Formular" muss die Formail so aussehen:

      <form action="http://www.IhrName.de/cgi-bin/feedback.cgi" method="POST" name="Formular" onSubmit="return chkFormular()">

      und der JavaScript erkennt nun, wegen der neue Eintrag: name="Formular" !!!!!

  2. Hallo Marco,

    1. das return bei onSubmit weglassen
    2. Du sprichst in chkFormular das Formularfeld an mit "document.Formular.Firma", dann mußt du natürlich dem Formular auch einen namen geben name="Formular" sonst findet deine Funktion das Formular erst gar nicht

    So funktioniert es:

    <html><head>
    <script language="JavaScript">
    <!--
    function chkFormular()
    {
    if(document.Formular.Firma.value == "")
    {
      alert("Geben Sie bitte Ihren Firmennamen ein!");
             document.Formular.Firma.focus();
      return false;
    }
    }
    //-->
    </script>
    </head>

    <form name="Formular" action="http://www.IhrName.de/cgi-bin/feedback.cgi" method="POST" onSubmit="chkFormular()">
               <input type="hidden" name="FBMAIL" value="mstrauss@topmail.de">
               <input type="hidden" name="FBSUBJECT" value="FORMULAR: Kontakt-Seite">
               <input type="hidden" name="FBURL" value="http://service.schlund.de/feedback/danke_bsp.html">

    <input type="text" name="Firma" size="35">
    <input type="submit">

    </form>
    </html>

    Viele Grüße Bernd