Ja, onchange borde lösa ditt problem.
gjorde ett exempel:
<script type="text/javascript">
function change(el) {
var children = document.getElementById("items").children;
for(var i=0;i<children.length;i++) {
if(el.value != "" && children[i].id==el.value) {
children[i].style.display = "block";
} else {
children[i].style.display = "none";
}
}
}
</script>
<style type="text/css">
.hidden { display: none;}
</style>
...
<select id="showElement" onchange="change(this)">
<option value="">Visa Element...</option>
<option value="element1">Element1</option>
<option value="element2">Element2</option>
</select>
<div id="items">
<div class="hidden" id="element1">jaha</div>
<div class="hidden" id="element2">mm</div>
</div>
...
</form>

