Formular: Mehrere gleiche Variablen nicht löschbar

lord-ruebe

Grünschnabel
Hallo,
ich habe ein Formular mit select-Feld, unter dem nach Auswahl eines Punktes ein weiteres select-Feld erscheint, bzw. bei dem sich durch ändern des oberen Punkt das untere austauscht.
Wenn ich im unteren Select-Feld dann auf einen Punkt klicke, wird wieder je nach gewähltem Punkt ein drittes select-Feld sichtbar. Dieses schickt beim klicken eines Punktes das Formular los.
Also insgesamt eine Baumstruktur.
Gemacht ist das, indem es für jeden klickbaren Punkt ein (unter-)Select-Feld gibt, das dann über style.visibility="hidden", bzw. "visible" ein- oder ausgeblendet wird.
Die Select-Felder in einer Ebene haben alle denselben Namen(ebene1,ebene2,ebene3), jedoch unterschiedliche IDs (logisch, sonst könnten sie ja nicht ein- oder ausgeblendet werden).
Nun das Problem:
Wenn ich ein wenig in den Felder rumklicke, und dann das Formular abschicke, übermittelt das Formular für jedes Select-Feld, das geklickt wurde, ein Werte-Paar. Also auch für mehrere Felder in einer Ebene. Ich will aber nur das zuletzt geklickte übermitteln.
Wie geht das?
Im IE kann man beim Ein- und Ausblenden einer unteren Ebene durch z.B.:
document.formular.ebene2.value="";
die Eingaben löschen. Das geht aber im Mozilla nicht.:(

Bitte, ich verzweilfe...
(ich hoffe, ich hab das Problem klar genug dargestellt)
 
Setze für die, die nicht übermittelt werden sollen gleichzeitig mir der visibilty='hide' das disabled=true - hab irgentwo mal gelesen, dass disabledte Felder nicht mit übertragen werden.
 
Zuletzt bearbeitet:
ich glaube, du müsstest mal etwas Code posten.
Nur der Hinweis, dass es nicht geht, hilft wenig weiter... denn mit con-f-use's Vorschlag geht es definitiv.
 
ok, zuerst mal die Option-Felder:

Code:
  <div class="form1">
  <select name="arbeit" class="textzelle" size="3" onClick="javascript:unterauswahl();">
  <option value="bearbeiten">einen Text Bearbeiten</option>
  <option value="loeschen">alten Text L&ouml;schen</option>
  <option value="neu">Neuen Text eingeben</option>
  </select>
  </div>
  <div class="form1"><br><br>
  <div class="hallo" id="weg_cp">Bitte w&auml;hlen Sie nun die Rubrik aus:</div>
  <!-- Bearbeiten -->
  <select name="rubrik1" size="5" id="weg1" onClick="javascript:unterunterauswahl(1);">
  <option value="karriere">Karriere – Freie Stelle</option>
  <option value="leistung1">Leistungsspektrum 1</option>
  <option value="leistung2">Leistungsspektrum 2</option>
  <option value="news">News &amp; Presse</option>
  <option value="home">Home</option>
  </select>
  <!-- Löschen -->
  <select name="rubrik2" size="5" id="weg2" onClick="javascript:unterunterauswahl(2);">
  <option value="leistung1">Leistungsspektrum 1</option>
  <option value="leistung2">Leistungsspektrum 2</option>
  <option value="news">News &amp; Presse</option>
  <option value="home">Home</option>
  </select>
  <!-- Neu  -->
  <select name="rubrik3" size="5" id="weg3" onClick="javascript:document.auswahl.submit();">
  <option value="news">News &amp; Presse</option>
  <option value="home">Home</option>
  </select>
  </div>
  
  <!-- TEXTE-->
  <div class="form2"><br><br>
  <div class="hallo" id="weg_cp2">Bitte w&auml;hlen Sie nun den Text aus:</div>
  
  <!-- Karriere-Freie Stellen   -->
  <select name="texte1" size="5" id="text1" onClick="javascript:document.auswahl.submit();">
  <option value="karriere1">Volunt&auml;r/in</option>
  </select>
  
  <!-- Leistung-Marktforschung -->
  <select name="texte2" size="5" id="text2" onClick="javascript:document.auswahl.submit();">
  <option value="leistung11">irgendwas</option>
  </select>
  
  <!-- Leistung-Mediaumsetzung  -->
  <select name="texte3" size="5" id="text3" onClick="javascript:document.auswahl.submit();">
  <option value="leistung21">irgendwas</option>
  </select>
  
  <!-- News & Presse	-->
  <select name="texte4" size="5" id="text4" onClick="javascript:document.auswahl.submit();">
  <option value="news1">irgendwas</option>
  </select>
  
  <!-- Home  -->
  <select name="texte5" size="5" id="text5" onClick="javascript:document.auswahl.submit();">
  <option value="home3">irgerndwas</option>
  </select>
  </div>

nun das Script (ich glaube, die fetten Teile sind des Pudels Kern. Auf jeden Fall funktioniert das so weder im IE noch im Mozilla):
Code:
  function unterauswahl(){
    for(i=1;i<4;i++){
  	document.getElementById("weg"+i).style.visibility="hidden";
  	document.getElementById("weg"+i).style.zIndex=1;
    }
    if(document.auswahl.arbeit.value=="bearbeiten")var wert=1;
    if(document.auswahl.arbeit.value=="loeschen")var wert=2;
    if(document.auswahl.arbeit.value=="neu")var wert=3;
    document.getElementById("weg_cp").style.visibility="visible";
    document.getElementById("weg"+wert).style.visibility="visible";
    document.getElementById("weg"+wert).style.zIndex=2;
    loeschen();
  }
  function unterunterauswahl(wer){
    unterloeschen();
    document.getElementById("weg_cp2").style.visibility="visible";
 	if(document.getElementById("weg"+wer).value == "karriere"){ document.getElementById("text1").style.visibility="visible"; document.getElementById("text1").style.zIndex=2;}
 	if(document.getElementById("weg"+wer).value == "leistung1"){ document.getElementById("text2").style.visibility="visible";document.getElementById("text2").style.zIndex=2;}
 	if(document.getElementById("weg"+wer).value == "leistung2"){ document.getElementById("text3").style.visibility="visible";document.getElementById("text3").style.zIndex=2;}
 	if(document.getElementById("weg"+wer).value == "news"){ document.getElementById("text4").style.visibility="visible";	 document.getElementById("text4").style.zIndex=2;}
 	if(document.getElementById("weg"+wer).value == "home"){ document.getElementById("text5").style.visibility="visible";	 document.getElementById("text5").style.zIndex=2;}
  }
  function loeschen(){
    unterloeschen();
    for(i=1;i<4;i++){
  	document.auswahl.getElementsByTagName('rubrik'+i).value="";
    }
  }
  function unterloeschen(){
    for (i=1;i<6;i++){
  	document.getElementById("text"+i).style.visibility="hidden";
  	document.getElementById("text"+i).style.zIndex=1;
  	document.auswahl.getElementsByTagName('texte'+i).value="";
    }
    document.getElementById("weg_cp2").style.visibility="hidden";
  }
Was muss da stattdessen hin? Oder bin ich mit dem Script komplett auf dem Holzweg? Grummel...
 

Neue Beiträge

Zurück