Foros del Web » Programando para Internet » Javascript »

ayuda para habilitar un select por medio de un radiobutton y función de javascript

Estas en el tema de ayuda para habilitar un select por medio de un radiobutton y función de javascript en el foro de Javascript en Foros del Web. Quiero lograr que al seleccionar la opción extranjero se habilite un select, y en caso contrario mantenerlo desabilitado, aquí tengo el código pero no logro ...
  #1 (permalink)  
Antiguo 21/02/2011, 15:06
 
Fecha de Ingreso: marzo-2010
Ubicación: Guadalajara, Jal
Mensajes: 91
Antigüedad: 14 años, 7 meses
Puntos: 1
ayuda para habilitar un select por medio de un radiobutton y función de javascript

Quiero lograr que al seleccionar la opción extranjero se habilite un select, y en caso contrario mantenerlo desabilitado, aquí tengo el código pero no logro mi objetivo, pueden orientarme?

Código HTML:
</script>
function extranjero(){
    var ext = document.formulario.getElementById('extranjero').value;
    //alert(ext)
    if(ext == 2)
        document.formulario.getElementById('permiso').disabled=true;
    else
        document.formulario.getElementById('permiso').disabled=false;
}
</script> 
...
...

Código HTML:
 <tr>
                    <th>Extranjero?</th>
                    <td>
                        <input type="radio" name="extranjero" id="extranjero" value="1" onclick="extranjero()" />Si
                        <input type="radio" name="extranjero" id="extranjero" value="2" onclick="extranjero()" />No
                    </td>
                </tr>
                
                <tr>
                    <th>Permiso</th>
                    <td>
                        <select id="permiso" name="permiso">
                        <option value="1">Permiso</option>
                        <option value="2">Residencia</option>
                        </select>
                    </td>
                </tr> 
...
...
__________________
Si me pides ayuda ten por seguro que hare todo mi esfuerzo por ayudarte...
  #2 (permalink)  
Antiguo 21/02/2011, 15:15
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 13 años, 10 meses
Puntos: 51
Respuesta: ayuda para habilitar un select por medio de un radiobutton y función de ja

Tenés dos veces el mismo id en los inputs, deben ser diferentes.
  #3 (permalink)  
Antiguo 21/02/2011, 15:24
 
Fecha de Ingreso: febrero-2011
Ubicación: Evolandia
Mensajes: 103
Antigüedad: 13 años, 8 meses
Puntos: 10
Respuesta: ayuda para habilitar un select por medio de un radiobutton y función de ja

A parte de los input's estas usando mal esto

document.formulario.getElementById('permiso').disa bled=true;

cuando deberia ser solo

document.getElementById('permiso').disabled=true;

mejor quita los id de los radiobutton y usa esto

function extranjero(radio){
document.getElementById("permiso").disabled=(radio .value == 2)?true: false;
}

y en los radio button lo llamas de esta manera

<input type="radio" name="extranjero" value="1" onclick="extranjero(this)" />Si
<input type="radio" name="extranjero" value="2" onclick="extranjero(this)" />No

Saludos!
  #4 (permalink)  
Antiguo 21/02/2011, 16:23
 
Fecha de Ingreso: marzo-2010
Ubicación: Guadalajara, Jal
Mensajes: 91
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: ayuda para habilitar un select por medio de un radiobutton y función de ja

Gracias, ya intenté lo que ambos mencionan pero no me da el resultado.

Lo replantee de la siguiente manera pero sigo sin conseguir lo que quiero.

Código HTML:
function extranjero(){
    document.formulario.permiso.disabled = true;
}

function ciudadano(){
    document.formulario.permiso.disabled = false;
}

Código HTML:
 <tr>
                    <th>Extranjero?</th>
                    <td>
                        <input type="radio" name="extranjero" value="1" onclick="extranjero()" />Si
                        <input type="radio" name="extranjero" value="2" onclick="ciudadano()" />No
                    </td>
                </tr>
                
                <tr>
                    <th>Permiso</th>
                    <td>
                        <select name="permiso">
                        <option value="1">Permiso</option>
                        <option value="2">Residencia</option>
                        </select>
                    </td>
                </tr> 
Gracias!
__________________
Si me pides ayuda ten por seguro que hare todo mi esfuerzo por ayudarte...
  #5 (permalink)  
Antiguo 21/02/2011, 17:05
 
Fecha de Ingreso: febrero-2011
Ubicación: Evolandia
Mensajes: 103
Antigüedad: 13 años, 8 meses
Puntos: 10
Respuesta: ayuda para habilitar un select por medio de un radiobutton y función de ja

Pruebalo de esta manera

Código HTML:
Ver original
  1. <script type="text/javascript">
  2. function init() {
  3.     document.getElementById("permiso").disabled = true;
  4. }
  5. function extranjero(radio){
  6.     document.getElementById("permiso").disabled=(radio.value == 2)?true: false;
  7. }
  8. </head>
  9. <body onload="init()">
  10.     <tr>
  11.         <th>Extranjero?</th>
  12.         <td>
  13.             <input type="radio" name="extranjero" value="1" onclick="extranjero(this)" />Si
  14.             <input type="radio" name="extranjero" value="2" checked onclick="extranjero(this)" />No
  15.         </td>
  16.     </tr>
  17.     <tr>
  18.         <th>Permiso</th>
  19.         <td>
  20.             <select name="permiso" id="permiso">
  21.             <option value="1">Permiso</option>
  22.             <option value="2">Residencia</option>
  23.             </select>
  24.         </td>
  25.     </tr>  
  26. </body>
  27. </html>
  #6 (permalink)  
Antiguo 21/02/2011, 17:29
 
Fecha de Ingreso: marzo-2010
Ubicación: Guadalajara, Jal
Mensajes: 91
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: ayuda para habilitar un select por medio de un radiobutton y función de ja

Gracias quedó solucionado con la última idea.

Saludos!
__________________
Si me pides ayuda ten por seguro que hare todo mi esfuerzo por ayudarte...

Etiquetas: habilitar, medio, radiobutton, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:03.