Christoph: voneinander abhängige SelectBoxen

Beitrag lesen

Hallo,

ich lese Jahreszahlen aus, und der Kunde kann sich einen Zeitraum wählen (von 1. Box, bis 2. Box). Steht nun in der ersten Box "Alle Jahre", ist die 2. gesperrt und der Inhalt wird auf "----" gesetzt. Der Code müsste Dir bei Deinem Problem helfen.

js-datei:
function initStatus(){
document.getElementById("box2").disabled=true;
}

function setStatus(){
  if(!document.getElementById("box1").options[0].selected){
    document.getElementById("box2").disabled=false;
  }
  else{
    document.getElementById("box2").disabled=true;
    document.getElementById("box2").selectedIndex=0;
  }
}

velocity-template:
</table>
<p>
 Hier können Sie den Zeitraum auswählen, aus dem die Lieferungen angezeigt werden sollen:
<script language="javascript" src="/heavyplate/javascript/infocenter/selectbox.js">
</script>
<script>
window.onload=initStatus;
</script>
<FORM METHOD="POST" ACTION="$Dispatcher?...">
<table border=0>
 <tr>
  <td>von: </td>
  <td>
    <select name="LieferAnfang" id="box1" onChange="setStatus();">
    <option>Alle Jahre</option>
    #foreach($element in $Jahreszahlen)
    <option>$element.intValue()</option>
    #end
    </select>
  </td>
  <td>bis: </td>
  <td>
    <select name="LieferEnde" id="box2">
    <option>----</option>
    #foreach($element in $Jahreszahlen)
    <option>$element.intValue()</option>
    #end
    </select>
  </td>
  <td><INPUT TYPE="submit" NAME="submit" VALUE="auswählen"></td>
 </tr>
</table>
</form>

in der foreach-schleife lese ich alle vorhandenen jahreszahlen aus.

so long, wie wir coolen Saarländer sagen [S. Bernarding, 2002]
Christoph