Selvom Mads' eksempel garanteret virker, så tillader jeg mig dog at komme med en anden funktion, da Mads' er under al kritik med hans ukorrekte og unødvendige spild- og storforbrug af eval() funktionen.
<script type="text/javascript">
function checkValue(selct, txtarea, affLayout=true)
{
var value = selct.options[selct.selectedIndex].value;
if(value == "2") {
if (affLayout == true)
document.getElementById('text').style.display='inline';
else
document.getElementById('text').style.visibility='visible';
} else {
if (affLayout == true)
document.getElementById('text').style.display='none';
else
document.getElementById('text').style.visibility='hidden';
}
}
</script>
<select id="status" onchange="checkValue(this, 'text');">
<option value="0">Status 0</option>
<option value="1">Status 1</option>
<option value="2">Status 2</option>
</select>
<textarea id="text"></textarea>
Så skal du sætte enten style="display: none;" eller style="visibility: hidden;" på dit textarea. Hvis du vælger den sidstnævnte skal du også skrive:
<select id="status" onchange="checkValue(this, 'text', false);">
fremfor:
<select id="status" onchange="checkValue(this, 'text');">
Her kan du læse om CSS property'en visibility:
http://www.blooberry.com/indexdot/css/properties/classify/visibility.htmOg her om display - så du kan se hvad forskellen er:
http://www.blooberry.com/indexdot/css/properties/classify/display.htm- Ellers så prøv dig frem
--
Ronni Egeriis