André Laugks: Mehrfachauswahlliste in ein hidden array kopieren

Beitrag lesen

Hallo!

function setInvis() {
  for (var i=0; i < document.treform.prod.length; ++i) {
     if (document.treform.prod.options[i].selected) {
        document.treform.act.push(document.treform.prod.options[i].value);
     }
  }
}

function setInvis()
  {
    var auswahl = new Array();
    var a = 0;
    for (var i=0; i < document.treform.prod.length; i++)
      {
        if (document.treform.prod.options[i].selected)
          {
             auswahl[a] = document.treform.prod.options[i].value;
             a++;
          }
      }

if(auswahl.length>0)
       {
         var arc_hidden  = auswahl.join(";");
         document.formularXYZ.arc_hidden.value = arc_hidden;
       }
 }

Wenn die Auswahl "multiportkarten" und "ethernet_netzwerkkarten" ist, sollte im Hidden-Feld der String "multiportcards;ethernet_netzwerkkarten" stehen. Du kannst nun mit PHP die Variable "act_hidden" in Empfang nehmen und den String bei dem Semikolon trennen. Die werte stehen Dir dann in einem Array zur Verfügung.
explode(): http://de2.php.net/explode/

<INPUT TYPE="HIDDEN" NAME="act_hidden" VALUE="">

Das ist eine sehr rudimentäre Lösung.

Du könntest auch für jeden ausgewählten Wert ein neues Hidden-Feld mit dem node-Objekt kreieren, ist aber meiner Meinung nach Schwachsinn.

MfG, André Laugks

--
L-Andre @ gmx.de