DIV Element mit Select einblenden


CreativPur

Erfahrenes Mitglied
Ich habe folgendes Script:

HTML:
Code:
<select name="Wartezeit_Std" id='wartezeit_std' class="form-control" onClick="calc();">
                                    <option value="00">Bitte wählen</option>
                                    <option value="0">Kein zusätzlicher Zeitaufwand</option>
                                    <option value="1">1 Stunde</option>
                                    <option value="2">2 Stunden</option>
                                    <option value="3">3 Stunden</option>

</select>

Script:

Code:
<script>

var select = document.getElementById('wartezeit_std'),
onChange = function(event) {

    var shown = this.options[this.selectedIndex].value == 0;

    var shown = this.options[this.selectedIndex].value == 1;

    var shown = this.options[this.selectedIndex].value == 2;
   
    var shown = this.options[this.selectedIndex].value == 3;

    document.getElementById('hidden_div').style.display = shown ? 'block' : 'none';
};

// attach event handler
if (window.addEventListener) {
    select.addEventListener('change', onChange, false);
} else {
    // of course, IE < 9 needs special treatment
    select.attachEvent('onchange', function() {
        onChange.apply(select, arguments);
    });
}

</script>

Ich möchte, dass bei 0, 1, 2 , 3 das gleiche Div-Element eingeblendet wird. Leider wird es nur bei value == 3 angezeigt.

Wo liegt der Fehler ?
 

sheel

I love Asm
Daran, dass folgender Code einfach falsch ist...
Javascript:
var shown = this.options[this.selectedIndex].value == 0;
var shown = this.options[this.selectedIndex].value == 1;
var shown = this.options[this.selectedIndex].value == 2;
var shown = this.options[this.selectedIndex].value == 3;
Richtiger:
Javascript:
var shown = this.options[this.selectedIndex].value < 4;