Auswahlmenü - multiple

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

  • Auswahlmenü - multiple

    hi,

    ich habe ein Formular mit einem multiple Auswahlmenü. Der Inahlt des Menüs kommt aus einer Datenbank.

    Nun ist mein Problem, sobald ich das Formular abschicke und die Seite refresht wird, soll er mir die vorher ausgewählten Werte selectieren. Mit einer Auswahl geht das ja noch, aber wie macht man das wenn mehrere ausgewählt wurden.

    Ich wäre für jende Tipp dankbar.

  • #2
    ich würde mal sagen, dass das genauso funktioniert. du musst ja nur das 'selected' überall reinschreiben, wo es markiert sein soll. aber darauf bist du ja sicherlich auch schon gekommen.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      So sieht meine Auswahlbox aus:

      PHP-Code:
                  <select name="select_user[]" size="8" multiple>
                <?
                  $f = 0;
                  while($row_user = get_row($result_user))
                  {
                ?>
                    <option value="<? echo "$row_user[userid]"; ?>" <?if ($_GET['fuser']=="$row_user[userid]") echo "selected"; ?>><? echo "$row_user[username]"; ?></option>
                <?
                  $f++;
                  }
                ?>
                  </select>
      Beim Abschicken des Formulars:

      PHP-Code:
      onsubmit="return filtern() 
      Die Funktion die ausgeführt wird:
      PHP-Code:
        function filtern()
        {
         var 
      kunde=document.form_kunde.select_kunde.value;
         var 
      projekt=document.form_neu.select_projekt.value;
         var 
      todo=document.form_neu.textfeld_todo.value;
         .... 
      usw.

         var 
      fil=location.href='index.php?mapid=104&fkunde='+kunde+'&fprojekt='+projekt+'&ftodo='+todo ... usw.


      Ich habe nun schon folgendes probiert:
      PHP-Code:
      var user=document.form_neu.select_user.value;
      oder
      var user=document.form_neu.select_user[].value
      Beides funktioniert aber leider nicht.

      Die Funktion müsste x-viele User übergeben. Nur wie genau macht man das in JavaScript?!

      Kommentar


      • #4
        meinst du etwa so?
        PHP-Code:
        arrUser=document.form_neu.select_user;
        user='';
        for (
        i=0;i<arrUser.length;i++){
        user+='&fuser['+i+']='+arrUser[i];

        Kommentar


        • #5
          @oppi

          Danke für deine Antwort.
          Ja so habe ich mir das vorgestellt. Das funktioniert auch soweit sehr gut.

          Aber der Inhalt der nun übergebenen Varibalen ist immer 'Objekt'.

          Ich habe schon hier ein '.value' hinzugefugt.
          PHP-Code:
          arrUser=document.form_neu.select_user.value
          Aber dann kommt dieser Fehler 'fuser[0]=undefined'.

          Wie bekomme ich die values der Auswahlbox nun in die Variablen?!

          Kommentar


          • #6
            Original geschrieben von SOB22
            Ich habe schon hier ein '.value' hinzugefugt.
            ebenfalls unfug, select hat keine eigenschaft value.

            Wie bekomme ich die values der Auswahlbox nun in die Variablen?!
            in dem du in einer schleife über die options läufst, und deren value-eigenschaft ausliest.
            http://selfhtml.teamone.de/javascrip...te/options.htm
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              @wahsaga

              Danke für deinen Tipp. Nach einigem rumprobieren habe ich es hinbekommen.

              PHP-Code:
                 for(j=0j<document.form_neu.select_user.options.lengthj++)
                 {
                  if(
              document.form_neu.select_user.options[j].selected == true)

                  var 
              arrUser=document.form_neu.select_user.options[j].value;
                  
              fil+='&fuser['+j+']='+arrUser;
                 } 

              Kommentar

              Lädt...
              X