Javascript Funktion und PHP

Brokiss

Grünschnabel
Hallo

ich habe eine Formular mit zwei abhängigen Auswahllisten.
Die Abhängigkeit habe ich mittels onchange und einer Javascript funktion gelöst.

Javascript:

HTML:
<script language="javascript" type="text/javascript"> 
    <!--
    var arrKat = new Array();

// Erste Komponente - Kategorie-ID ist Index
arrKat["1"] = new Array();
// Unterkategorien zur ersten Kategorie-ID
arrKat["1"][0] = "keine Auswahl moeglich";
// Zweite Komponente - Kategorie-ID ist Index
arrKat["2"] = new Array();
// Unterkategorien zur ersten Kategorie-ID
arrKat["2"][0] = "Hauptseite";
arrKat["2"][1] = "Werbung";
// Dritte Komponente - Kategorie-ID ist Index
arrKat["3"] = new Array();
// Unterkategorien zur ersten Kategorie-ID
arrKat["3"][0] = "Hauptseite";
arrKat["3"][1] = "Werbung1";
arrKat["3"][2] = "Werbung2";

function updateSub(objForm, strKey){
  var objSelSub = objForm.Anzeigezone;

  // Bestehende Liste löschen
  objSelSub.options.length = 0;

  // Falls der default-Zustand gewählt wird
  if(strKey == "default") return;

  // Unterkategorie-Array durchlaufen
  for(var i=0; i<arrKat[strKey].length; i++){
    // Neues Options-Objekt (value = Hauptkat_Unterkat)
    //objOption = new Option(arrKat[strKey][i], (/*strKey+"_"+*/i), false, false);
    objOption = new Option(arrKat[strKey][i], arrKat[strKey][i], false, false);
    // Option in Liste einhängen
    objSelSub.options[objSelSub.length] = objOption;
  }
}
--> </script>

die abhängigen Listen:

HTML:
<select name="Aufteilung" size=1  onchange="updateSub(this.form, this.value)">
                    <option value="default">Bitte w&auml;hlen</option>
                    <option value="1">1 Fenster</option>
                    <option value="2">2 Fenster</option>
                    <option value="3">3 Fenster</option>                
</select>  
                                        
          
<select name="Anzeigezone" size=1>
                    <option value="default">Bitte w&auml;hlen</option>
</select>

Nun wollte ich halt dass wenn man in der ersten Liste etwas auswählt und dann auf aktualisieren klickt das der ausgewählte Wert stehen bleibt.
Also habe ich die Auswahllisten wie folgt umgeschrieben:

PHP:
<select name="Aufteilung" size=1  onchange="updateSub(this.form, this.value)">
       <?php
            if(isset($_POST['aktualisieren'])){
                    echo"<option value=\"$Aufteilung\">$Aufteilung Fenster</option>";
                   }else{
                    echo"<option value=\"default\">Bitte w&auml;hlen</option>";
                    echo"<option value=\"1\">1 Fenster</option>";
                    echo"<option value=\"2\">2 Fenster</option>";
                    echo"<option value=\"3\">3 Fenster</option>";
                    }
        ?>                
</select>

Das funktioniert jetzt auch,allerdings wird jetzt meine zweite Auswahlliste nicht mehr gefüllt, so als ob das nicht als onchange erkannt wird.
Also hab ich versucht die Javascript Funktion im PHP teil aufzurufen, aber das klappt nicht!
PHP:
<select name="Aufteilung" size=1  onchange="updateSub(this.form, this.value)">
       <?php
            if(isset($_POST['aktualisieren'])){
                    echo"<option value=\"$Aufteilung\">$Aufteilung Fenster</option>";
                    echo"<script>updateSub(this.form, this.value)</script>";
                   }else{
                    echo"<option value=\"default\">Bitte w&auml;hlen</option>";
                    echo"<option value=\"1\">1 Fenster</option>";
                    echo"<option value=\"2\">2 Fenster</option>";
                    echo"<option value=\"3\">3 Fenster</option>";
                    }
        ?>                
</select>


Gibt es vielleicht irgendeine Möglichkeit das die Funktion ausgeführt wird, nach dem die erste Liste geändert wurde.
Ich wäre dankbar für Ratschläge.
 
Zurück