Die Werte aus einer <SELECT> mit Mehrfachauswahl auslesen

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

  • Die Werte aus einer <SELECT> mit Mehrfachauswahl auslesen

    Hi wieder,

    noch ein Problemchen.
    Habe also folgender Script:

    PHP-Code:

    function getVal(){
        var 
    sel=document.getElementsByName('ausgew[]');

        for(
    i=0;i<sel.length;i++){
                 
           var 
    selEmpf=document.getElementsByName('zsenden[]');
           var 
    posEmpf=selEmpf.length;
           var 
    Eintrag document.createElement("option");
           
    Eintrag.text sel[i].value;
           
    Eintrag.value sel[i].value;         
           
    selEmpf[0].add(Eintrag,posEmpf);
             
        }         

    und HTML Code:

    [COLOR=red]
    <select name="ausgew[]" size="7" multiple>
    <option value="wert 1">Wert 1</option>
    <option value="wert 2">Wert 2</option>
    </select>

    <input onClick="getVal()" type="button" value="OK">

    <select name="zsenden[]" size="7" multiple >

    </select>
    [/COLOR]


    Wenn ich aus erten SELECT mehr als einen Eintrag auswähle, dann liefert er nur den ersten., so dass immer sel.length==1 .

    Wie kann ich das Mehrauswahl auch wie eine Array auslesen um dann nach einander in das anderen SELECT hinzuzufügen?

    Danke
    Grüße

  • #2
    Re: Die Werte aus einer &lt;SELECT&gt; mit Mehrfachauswahl auslesen

    überlege dir, was getElementsByName dir zurückgibt [1], und warum dessen länge in deinem fall (ich nehme an, du hast zwei select mit diesem namen?) immer 1 sein wird.


    [1] es ist offenbar nicht das, was du erwartest.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Mit diesem Name habe ich nur einen SELECT, der andere heißt 'zsenden[]'.
      Alles was ich erwarte, ist nur mein auswahl. Wenn ich nur einen Eintarg auswähle dann soll nur ein kommen, wenn mehrere dann mehrere.

      Aber habe inzwischen einige korrekturen vorgenommen, und zwar habe ich
      [COLOR=red]var sel=document.getElementsByName('ausgew[]')[/COLOR]
      durch
      [COLOR=red]var sel=document.getElementsByName('ausgew[]')[0][/COLOR] ersetzt.

      Jetzt liefert er mir gesamten Inhalt von 'ausgew[]' ohne dass ich was auswähle.

      Aber für mich ist wichtig, dass ich das Mehrauswahl auslesen kann.

      Wenn jemmand eine Idee hat, hilft mir bitte.

      Danke
      Grüße

      Kommentar


      • #4
        Original geschrieben von yesrus
        Aber habe inzwischen einige korrekturen vorgenommen, und zwar habe ich
        var sel=document.getElementsByName('ausgew[]')
        durch
        var sel=document.getElementsByName('ausgew[]')[0] ersetzt.
        gut, dann hast du jetzt schon mal verstanden, wie du mit getElementsByName auf dein select-feld zugreifst. vorher hast du nämlich die länge des von getElementsByName zurückgelieferten arrays betrachtet :-)

        Jetzt liefert er mir gesamten Inhalt von 'ausgew[]' ohne dass ich was auswähle.
        natürlich tut 'er' das - du fragst ja noch überhaupt gar nicht ab, welche felder selektiert sind und welche nicht.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Wie kann ich das abfragen, und selektieren?

          Wenn du eine Idee hast dann wäre ich dir sehr dankbar.


          Grüße

          Kommentar


          • #6
            Original geschrieben von yesrus
            Wenn du eine Idee hast dann wäre ich dir sehr dankbar.
            warum müssen eigentlich immer andere leute für euch auf die geniale idee kommen, sowas mal in selfhtml nachzusehen?

            *seufz*
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Danke dir.

              Warum muss man befor er helfen will, sich so komisch ausreden.
              Einfach helfen, und alle zufrieden.
              Wenn jemmand irgendwo nicht nachgeschaut hat, warum kommt man nicht auf die Idee, dass dafür auch Gründe vorhanden.

              Einfach nett zu sein ist einfach!

              Danke noch einmal.

              Grüße

              Kommentar


              • #8
                Original geschrieben von yesrus

                Wenn jemmand irgendwo nicht nachgeschaut hat, warum kommt man nicht auf die Idee, dass dafür auch Gründe vorhanden.
                Faulheit ist kein Grund :P
                Für Rechtschreibfehler übernehme ich keine Haftung!

                Kommentar


                • #9
                  Original geschrieben von yesrus
                  Einfach helfen, und alle zufrieden.
                  so viel faulheit in kombination mit solch forderndem verhalten ist einfach schon unverschämt.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    Faulheit nenne ich, wenn man für so unsinige Blödsinn, die ihr geschriben habt, eure eigene Zeit verschwindet.
                    Wenn ihr nichts mehr zu tun habt und nichts besseres zu sagen, dann es ist immer lieber sich mit besseren dingen zu beschäftigen.

                    Das war echt scheise eurerseits.
                    Das ist doch ein Forum. Ein Bisschen Verständniss fählt euch auf jedem Fall.


                    Grüße

                    Kommentar


                    • #11
                      Original geschrieben von yesrus
                      Das war echt scheise eurerseits.
                      nein, es ist echt scheiße deinerseits, dich a) nicht selbst erst mal darum zu kümmern (es war ja im nachhinein wohl doch recht einfach, wenn man mal ein bisschen liest, oder?), und b) dann auch noch sinngemäß zu sagen "das nächste mal bitte nur direkt den link, ohne irgendwelche weiteren hinweise darauf, dass ich erst mal selber suchen möchte."


                      btw: pfählen schreibt man so.
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar


                      • #12
                        Streiten macht kein Sinn.

                        Nur eine Bitte. Schreib keine Antworten auf von mir gestellten Fragen.
                        Sie bringen so wie so nichts.

                        Danke im Voraus.

                        Kommentar


                        • #13
                          Original geschrieben von yesrus
                          Nur eine Bitte. Schreib keine Antworten auf von mir gestellten Fragen.
                          Sie bringen so wie so nichts.
                          hast du dein problem jetzt etwa nicht lösen können, du undankbares kleines !$/&% ...?
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            ganz ruhig bleiben @wahsaga

                            ** ROFL **

                            Kommentar

                            Lädt...
                            X