Este tema tal vez ya esta un poco pasado y nadie lo ve pero por si acaso les dejo mi solucion:
Si tenemos por ejemplo 2 radiobuttons con su respectivo textfield (O sea dos radio butons cada uno con su input para escribir algo) y deseamos habilitar ese textfield al hacer click en el radiobutton correspondiente y que al mismo tiempo se deshabilite el segundo textfield (poniendose el contenido en blanco) podemos hacer esto:
Código HTML:
<script language="JavaScript">
function habilita1(){
document.NOMBREFORMULARIO.NOMBREINPUT1.disabled = false;
}
function deshabilita1(){
document.NOMBREFORMULARIO.NOMBREINPUT1.disabled = true;
document.NOMBREFORMULARIO.NOMBREINPUT1.value = "";
}
function habilita2(){
document.NOMBREFORMULARIO.NOMBREINPUT2.disabled = false;
}
function deshabilita2(){
document.NOMBREFORMULARIO.NOMBREINPUT2.disabled = true;
document.NOMBREFORMULARIO.NOMBREINPUT2.value = "";
}
</script>
Donde NOMBREINPUT1 es el nombre del primer textfield y NOMBREDELINPUT2 es el nombre del segundo textfield. OJO que ambos textfields tienen que estar en un solo formulario (NOMBREFORMULARIO) Quien podria hacer combos en formularios disitintos?? JAJAJAJA Solo yo a un principio....
Luego los radiobuttons, deben tener la siguiente estructura:
Código PHP:
<input type="radio" name="NOMBRERADIO" value="VALOR1"
onclick="habilita1() || deshabilita2()">
<input type="radio" name="NOMBRERADIO" value="VALOR2"
onclick="habilita2() || deshabilita1()">
y los INPUTS o textfields deber ser asi inhabilitados inicialmente:
Código PHP:
<input type="text" name="NOMBREINPUT1" disabled>
<input type="text" name="NOMBREINPUT2" disabled>
Y listo, ahora si queremos mas input o textfields en nuestro combo, pues solo creamos mas combinaciones de funciones de HABILITAR y DESHABILITAR en el script del principio.
Claro que podemos hacerlo mas eficiente utilizando estructuras de control como el WHILE o el CASE.. pero veamos si alguien necesita algo mas grande.