Stefan: Auswahlliste im Formular ohne Submit-Button

Guten Morgen,

in meinem Formular befindet sich eine Auswahlliste. Sobald der User eine Option gewählt hat, soll das Formular abgeschickt werden. Der Submit-Button entfällt also (Platzgründe).
Ich nehme an, ich muss mit dem Event-Handler

onClick="this.document.form.submit" im select-Tag arbeiten?!
Aber so passiert gar nichts - Wie gehe ich in dem Fall vor? Wie lautet der JS-Befehl und wo muss er platziert werden?

Vielen Dank, Jens

  1. Guten Morgen,

    [...]

    onClick="this.document.form.submit" im select-Tag arbeiten?!

    [...]

    onChange und nicht onClick

    Gruß
    Messmar

    1. Danke!

      Also so

      onChange="this.document.form.submit" im select-Tag

      Es passiert aber dennoch nichts und die JS-Konsole im Mozilla gibt aus:
      "this.document has no properties"

      ??

      1. Danke!

        Also so

        onChange="this.document.form.submit" im select-Tag

        Das Problem wir nicht nur durch onChange gelöst. Du musst das hier auch
        anpassen bzw.korrigieren:

          
        this.document.form.submit  
        
        

        Gruß
        Messmar

        1. Das Problem wir nicht nur durch onChange gelöst. Du musst das hier auch
          anpassen bzw.korrigieren:

          this.document.form.submit

            
          Quatsch.  
            
          this ist in dem Aufruf das select Tag und es soll dass dazugehörige Formular abgeschickt werden. Jedes Formularelement hat die Eigenschaft form und die Methode zum abschicken heißt submit. also:  
          <select onchange="this.form.submit();">  
            
          Struppi.
          
          -- 
          [Javascript ist toll](http://javascript.jstruebig.de/) (Perl auch!)
          
      2. Hi,

        Es passiert aber dennoch nichts und die JS-Konsole im Mozilla gibt aus:

        [...]

        Wie wäre es mit dem hier:

          
          
        <form name="myForm1" target="_blank" method="get" action="index.htm">  
        <select name="" onchange="document.myForm.submit()">  
         <option>dsdsd</option>  
         <option>ddfsdf</option>  
         <option>tzrr</option>  
         <option>nhfjj</option>  
         <option>45454</option>  
        </select>  
        </form>  
          
        
        

        Gruß
        Messmar

        1. Sorry ;-(

          ein Tipp-Fehler hier:

          <form name="myForm1" target="_blank" method="get"

          Das Formular muss heißen: "myForm" und "myform1" genau wie es in onChange aufgerufen wird.

          Bitte korregieren.

          Gruß
          Messmar

          1. Suer- Danke! Genauso funktioniert es so wie ich will :-)

          2. Sorry man noch mal ;-(

            man oh man wieder ein Tipp-Fehler:

            "myForm" und NICHT "myForm1"

            Also richtig:

              
            <form name="myForm" method="get" action="index.htm">  
            
            

            Gruß
            Messmar

        2. Wie wäre es mit dem hier:

          [code lang=html]

          <form name="myForm1" target="_blank" method="get" action="index.htm">
          <select name="" onchange="document.myForm.submit()">

          Wie wär's einfach mit:
          <select name="" onchange="this.form.submit()">

          Stefan war schon auf den richtigen Weg. So kannst du dir den Formularnamen sparen oder brauchst zumimdest nicht darauf zu achten.

          Struppi.

          --
          Javascript ist toll (Perl auch!)
          1. Stefan war schon auf den richtigen Weg. [...]

            <select name="" onchange="this.form.submit()">

            Ich weiß, dass man das Formular auch so ansprechen kann ;-)
            Man könnte es auch ganz anders lösen.

            So oder so, beide Lösungen führen zum Ziel.

            Gruß
            Mssmar

            1. <select name="" onchange="this.form.submit()">

              Ich weiß, dass man das Formular auch so ansprechen kann ;-)

              Das sah aber hier nicht so aus.

              Man könnte es auch ganz anders lösen.

              So oder so, beide Lösungen führen zum Ziel.

              schon klar, aber du hast selber durch deine drei Antworten sehr schön gezeigt, warum this.form sinnvoller ist.

              Struppi.

              --
              Javascript ist toll (Perl auch!)
              1. Das sah aber hier nicht so aus.

                Hier habe ich nichts geändert. Ich habe es gelassen wie er es geschrieben hat und habe nur darauf hingewiesen, dass er genau diesen Code-Schnipssel anpassen muss.

                Gruß
                Messmar

                1. Das sah aber hier nicht so aus.

                  Hier habe ich nichts geändert. Ich habe es gelassen wie er es geschrieben hat und habe nur darauf hingewiesen, dass er genau diesen Code-Schnipssel anpassen muss.

                  schon klar, das document löschen wäre natürlich zuviel gewesen.
                  Stattdessen kam von dir das, was wieder nicht darauf hinweist, dass dir .form bekannt war. Wie auch immer, du hattest, um den fast richtigen Ansatz zu korrigieren drei Versuche gebraucht, mit deinem Wissen von this.form hätte das auch schneller gehen können, oder?

                  Struppi.

                  --
                  Javascript ist toll (Perl auch!)