Hilfe: Formular wird gesendet obwohl ich es nicht senden will

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Hilfe: Formular wird gesendet obwohl ich es nicht senden will

    Hi Leute,

    ich hab mit javascript eine Funktion geschrieben:
    PHP-Code:
    function filled (){

    if(
    document.postform.Name.value.length==0)
    {
     
    alert("Bitte geben Sie einen Namen ein!");
    }
    else
    {

     if(
    document.postform.t.value.length==0)
      {
       
    alert("Bitte geben Sie eine Nachricht ein!");
      }

    if(
    document.postform.t.value.length!=0&&document.postform.Name.value.length!=0)
     {
      
    document.postform.submit();
     }
    }

    Diese prüft ob ein Text und ein Name eingegeben wurde (da gibt es bestimmt noch eine bessere Methode, oder?)

    Nach dem Formular hab ich den Submitbutton hin gesetzt:
    PHP-Code:
    <form name="postform" action="datei.php">

    [
    Inhalt]

    </
    form>
    <
    input class='mwingButton' type='submit' onclick='filled();' value='Abschicken'
    es wird jedoch jedesmal das Formular abgesendet wenn man auf den Button klick.

    Kann mir bitte jemand helfen?

    Gruß Sebi

  • #2
    nicht == 0 sondern == 'undefined'
    prob das ma
    Signatur-Text ...

    Kommentar


    • #3
      Hab dies:
      PHP-Code:
      document.postform.Name.value=='undefined'
      und das:

      PHP-Code:
      document.postform.Name.value.length=='undefined'
      ausprobiert. irgendwie funtzts dann gar nix mehr.

      Kommentar


      • #4
        Re: Hilfe: Formular wird gesendet obwohl ich es nicht senden will

        Original geschrieben von php-sebi
        es wird jedoch jedesmal das Formular abgesendet wenn man auf den Button klick.
        Natürlich - weil du absolut nichts unternommen hast, um das zu unterbinden.

        Wenn du die weitere Abarbeitung eines Events unterbrechen willst, musst du aus dem Eventhandler heraus false zurückgeben.

        Btw: onsubmit im form ist für solche Sachen idR. wesentlich besser geeignet.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Danke es funtzt soweit.

          Hab aber wieder ein neues Problem:
          Also das Formular wird jetzt nur abgeschickt wenn was in den Textfeldern eingetragen wurde. Doch immer wenn ich die Seite neulade wird das Formular immerwieder abgeschickt.
          Ich blicks net. Für mich scheint das grad völlig unlogisch, vielleicht stehe ich auch einfach nur auf dem Schlauch.

          Gruß Sebi

          Kommentar


          • #6
            nich den code senden! problem erkannt!
            Signatur-Text ...

            Kommentar


            • #7
              ein reload hat noch die gefüllten variablen, klar das er es erneut sendet!
              Signatur-Text ...

              Kommentar


              • #8
                Gegenfrage: Du nennst dich "php-sebi" wieso realisierst due das nciht mit php? wäre einfacher ...
                Signatur-Text ...

                Kommentar


                • #9
                  Stimmt eigentlich.
                  Danke!

                  Ok dann wär auch dieses Problem gelöst

                  Kommentar


                  • #10
                    Hab noch eine Frage zudem Thema:
                    ist es möglich in onsubmit 2 Funktionen einzubauen und das Formular nur abzuschicken, wenn beide Funktionen true zurück geben?

                    Gruß Sebi

                    Kommentar


                    • #11
                      PHP-Code:
                      <form onsubmit="return checkForm();">
                      </
                      form>


                      //JS:
                      function checkForm(){
                        if(
                      func1() && func2()){
                          return 
                      true;
                        }else{
                          return 
                      false;
                        }



                      Da hättste aber mit ein bischen überlegen auch selbst drauf kommen können

                      Kommentar


                      • #12
                        jo stimmt.
                        Danke!!!

                        Kommentar

                        Lädt...
                        X