Queremos que partiendo de una combo se pueda seleccionar una opción u otra. Según esa selección vamos a modificar las propiedades de otro elemento (enabled/disabled) para que solamente se habilite en una opción específica del combo. El combo:
<select name="paragrc" onchange="return cambia(this);"> <option value="">--seleccione--</option> <option value="1" >Trabajo en equipo</option> <option value="2" >Optimización de recursos</option> <option value="3" >Telemarketing</option> <option value="4" >Acciones de marketing: creatividad</option> <option value="5">Comunicación y coordinación de equipos</option> <option value="6">Otros</option> </select> <!-- Este objeto es el que cambia de propiedad solo si seleccionamos "otros" --> ¿Qué otros?: <textarea id="otros" name="otros" cols="30" rows="10" disabled></textarea>
Como veis id=“otros” está deshabilitado por defecto, solo lo habilitaremos al seleccionar la opción “Otros” del combo. La función encargada de ello es cambia():
function cambia(formulario) { if(formulario.value == 6) { document.getElementById('otros').disabled=false; } else { document.getElementById('otros').disabled=true; } }
Si cuando cambia el valor del formulario (onchange) es 6 (Otros) ponemos la propiedad disabled=false del id=“otros”. En cualquier otro caso la ponemos a true.