Ncio: Dynamisch generierte Select-Boxen

Beitrag lesen

Hallo,

bitte helft mir dabei, folgendes Script -an dem ich langsam verwzeifle- richtig ans Laufen zu kriegen.

Bei Auswahl eines bestimmen Landes in der ersten Selectbox, soll eine zweite Selectbox erscheinen, in der die Regionen dieses Landes aufgelistet sind.

Klicke ich nun in der ersten selectbox auf alle "Alle Länder", soll die zweite Selectbox wieder verschwinden.

Hier mein Script (inclusive Fehler :-( ) :
------------------------------------------------------

<html>

<head>
<title></title>
<script language="JavaScript">
<!--
function Wertuebertragen( i, name ) {
 if(document.getElementById){
  var selected = document.getElementById( name );
  for(var j=0; j<selected.length;++j) {
   if( selected.options[j].selected == true)
    document.forms[0].b_land.value = selected.options[j].value;
  }
 }
 else if (document.layers){
  for(j=0;j<document.layers[i].document.forms[0].name.length;++j)
   if(document.layers[i].document.forms[0].name.options[j].selected == true)
    document.forms[0].b_land.value=document.layers[i].document.forms[0].name.options[j].value;
 }
 else if (document.all){
  for(j=0;j<document.forms[0].name.length;++j)
   if(document.forms[0].name.options[j].selected == true)
  document.forms[0].b_land.value=document.forms[0].name.options[j].value;
 }
return
}

var last=0;
function zeigeLaender()
{
 var num;

for(var j=0; j<document.forms[0].land.length;++j) {
   if( document.forms[0].land.options[j].selected == true) num = j;
 }

if ( document.layers ){
  document.layers[last].visibility="hide";
  if(num>0)document.layers[num].visibility="show";
 }

else if ( document.all ){
  document.all.tags("div")[last].style.diplay="none";
  if(num>0)document.all.tags("div")[num].style.display="block";
 }

last=num;
 document.forms[0].b_land.value="";
return
}

//-->

</script>
</head>

<body>

<form action="beispiel.php3" name="FrontPage_Form1" method="GET">
<input type="hidden" name="notify" value="yes">
<input type="hidden" name="b_land" value="">
 
<center>
  <table CELLSPACING="0" BORDER="0" bgcolor="#00FFFF" width="512" style="font-family: Verdana; font-size: 10pt">

<tr>
      <td width="12%">BAUJAHR <small>(jünger als)</small>:</td>
      <td width="12%"><select NAME="baujahr" SIZE="1">
        <option VALUE></option>
        <option VALUE="2001">2001</option>
        <option VALUE="2000">2000</option>
      </select>
      </td>

<td width="114">LAND:</td>
      <td width="123"><select name="land" size="1" onchange="zeigeLaender()">
        <option value="Alle">Alle Laender</option>
        <option value="Deutschland">Deutschland</option>
        <option value="Frankreich">France</option>
      </select></td>
    </tr>

<tr>
      <td width="114">PREIS(Euro) <small>max.</small>:</td>
      <td width="123"><select name="preis" size="1">
        <option value></option>
        <option value="100">100</option>
        <option value="300">300</option>
        <option value="500">500</option>
      </select></td>
      <td width="114">REGION:</td>
      <td width="123">
  <div id="Deutschland" style="display:none">
   <p><select name="Deutschland" size="1" onchange="Wertuebertragen(0, 'Deutschland')">
   <option value>Alle Regionen</option>
   <option value="Baden-Württemberg">Baden-Württemberg</option>
   <option value="Bayern">Bayern</option>
   <option value="Berlin">Berlin</option>
   </select></p>
  </div>

<div id="Frankreich" style="display:none">
   <p><select name="Frankreich" size="1" onchange="Wertuebertragen(1, 'Frankreich')">
   <option value>Alle Regionen</option>
   <option value="Alsace">Alsace</option>
   <option value="Aquitaine">Aquitaine</option>
   <option value="Auvergne">Auvergne</option>
   <option value="Basse Normandie">Basse Normandie</option>
   </select></p>
  </div>
      </td>
 <tr><td colspan=4 align=center>
  <input type="Submit" name="submit" value="Abschicken">
  <input type="reset" value="Löschen">
 </td></tr>
  </table>

</center>
</form>

</body>
</html>
------------------------------------------------------

Danke im voraus für Eure Tipps
Grüße
Nico