Foros del Web » Programando para Internet » Javascript »

Radio que Habiliti oh Deshabiliti otro Radio

Estas en el tema de Radio que Habiliti oh Deshabiliti otro Radio en el foro de Javascript en Foros del Web. por ejemplo tengo una opcion que es Trabaja? sale un radio Si y otro No si dice que Si se habilitan los Radios; Fulltime, Partime, ...
  #1 (permalink)  
Antiguo 18/02/2005, 12:43
 
Fecha de Ingreso: febrero-2005
Ubicación: chile, Santiasko
Mensajes: 728
Antigüedad: 19 años, 3 meses
Puntos: 1
Radio que Habiliti oh Deshabiliti otro Radio

por ejemplo tengo una opcion que es Trabaja?
sale un radio Si y otro No si dice que Si se habilitan los Radios; Fulltime, Partime, Completo, Estudiante y Desempleado....

todo Ok con los txt, me sale bien pero en el de los Radios como tienen el mismo Nombre...nose que pasa...aqui les dejo mi codigo..


este es el Script de JAva
Código:
  <script language="JavaScript"> 
   function habilitainfo(){ 
    document.form1.EMPRESA_ACTUAL.disabled = false; 
	document.form1.regimen.disabled = false; 

	 } 

   function deshabilitainfo(){ 
    document.form1.EMPRESA_ACTUAL.disabled = true; 
    document.form1.EMPRESA_ACTUAL.value = ""; 
	
	document.form1.regimen.disabled = true; 
    document.form1.regimen.value = ""; 
	
   } 
</script>

este es del formulario....
Código:
  <table width="100%" border="0"  align="center" cellspacing="0" cellpadding="0">
    <tr> 
	 <tr> 
	<td colspan="4" class="ttitulo style11"><strong>Informaci&oacute;n Actual</strong></td>
    <tr> 
      <td width="50%">Trabaja actualmente (*)</td>
      <td width="50%">R&eacute;gimen (*)</td>
    </tr>
    <tr> 
      <td><input type="radio" name="trabajo" value="SI" onClick="habilitainfo()">
        Si 
        <input type="radio" name="trabajo" value="NO" onClick="deshabilitainfo()">
        No</td>
      <td><input type="radio" name="regimen" value="FULLTIME" disabled>
        Full Time 
        <input type="radio" name="regimen" value="PARTTIME" disabled>
        Part Time 
        <input type="radio" name="regimen" value="INDEPENDIENTE" disabled>
        Independiente <br>
        <input type="radio" name="regimen" value="ESTUDIANTE" disabled>
        Estudiante 
        <input type="radio" name="regimen" value="DESEMPLEADO" disabled>
        Desempleado</td>
    </tr>
    <tr> 
      <td>Empresa</td>
      <td>&nbsp;</td>
    </tr>
    <tr> 
      <td><input type="text" name="EMPRESA_ACTUAL" disabled></td>
      <td>&nbsp;</td>
    </tr>
  </table>
como repito solo me funciona en los txt, yo quiero que me funcione tb en esos radios...
__________________
Una Vez Muerto el Perro.............Se acaba la Rabia :risa:
  #2 (permalink)  
Antiguo 18/02/2005, 14:18
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 19 años, 6 meses
Puntos: 3
Mira esto
http://www.quirksmode.org/js/disabled.html
__________________
Angel :cool:
  #3 (permalink)  
Antiguo 18/02/2005, 14:25
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 19 años, 6 meses
Puntos: 3
He jugado un poco y he dado con ello:
Código PHP:
function habilitainfo(){ 
    
with (document.form1)
    {    
EMPRESA_ACTUAL.disabled false
for (
i=0i<regimen.lengthi++) regimen[i].disabled false
    }

(Básicamente, hay que recorrer los radios uno por uno.)
__________________
Angel :cool:
  #4 (permalink)  
Antiguo 18/02/2005, 17:05
 
Fecha de Ingreso: febrero-2005
Mensajes: 8
Antigüedad: 19 años, 2 meses
Puntos: 0
Solamente para ampliar un poquito la respuesta que te han dado. Como los radios tienen el mismo nombre, estos conforman un arreglo o Array. Entonces para deshabilitarlos o habilitarlos o cualquier otro trabajo debes recorrer todos los elementos del arreglo tal y como te han indicado.

"regimen" es el nombre del arreglo que contiene los cinco radios. Y los empiezas a numerar desde cero
Saludos
Nancy
  #5 (permalink)  
Antiguo 21/02/2005, 07:04
 
Fecha de Ingreso: febrero-2005
Ubicación: chile, Santiasko
Mensajes: 728
Antigüedad: 19 años, 3 meses
Puntos: 1
Muchas gracias... pero tengo una pequeña duda en el radio cuando le coloco que "No" me vuelve a deshabilitar el radio pero queda marcado la opcion que eleji, osea si escribo algo en el text y elijo fulltime cuando le coloco el radio No me borra lo que habia escribido en el text y en cuanto al radio queda todavia marcado fulltime. es algo minimo pero igual se vee feo...

este es el codigo ahora:
Javascript:
Código PHP:
  <script language="JavaScript"
function 
habilitainfo(){ 
    
with (document.form1
    {     
EMPRESA_ACTUAL.disabled false
for (
i=0i<regimen.lengthi++) regimen[i].disabled false
    } 


   function 
deshabilitainfo(){ 
   
with (document.form1)
   {
     
EMPRESA_ACTUAL.disabled true
     
form1.EMPRESA_ACTUAL.value ""
    
    for(
i=0i<regimen.lengthi++) regimen[i].disabled true;
          
regimen.disabled true
          
regimen.checked false;
    }
   } 
</script> 
y este el formulario:
Código PHP:
  <table width="100%" border="0"  align="center" cellspacing="0" cellpadding="0">
    <
tr
     <
tr
    <
td colspan="4" class="ttitulo style11"><strong>Informaci&oacute;n Actual</strong></td>
    <
tr
      <
td width="50%">Trabaja actualmente (*)</td>
      <
td width="50%">R&eacute;gimen (*)</td>
    </
tr>
    <
tr
      <
td><input type="radio" name="trabajo" value="SI" onClick="habilitainfo()">
        
Si 
        
<input type="radio" name="trabajo" value="NO" onClick="deshabilitainfo()">
        
No</td>
      <
td><input type="radio" name="regimen" value="FULLTIME" disabled>
        
Full Time 
        
<input type="radio" name="regimen" value="PARTTIME" disabled>
        
Part Time 
        
<input type="radio" name="regimen" value="INDEPENDIENTE" disabled>
        
Independiente <br>
        <
input type="radio" name="regimen" value="ESTUDIANTE" disabled>
        
Estudiante 
        
<input type="radio" name="regimen" value="DESEMPLEADO" disabled>
        
Desempleado</td>
    </
tr>
    <
tr
      <
td>Empresa</td>
      <
td>&nbsp;</td>
    </
tr>
    <
tr
      <
td><input type="text" name="EMPRESA_ACTUAL" disabled></td>
      <
td>&nbsp;</td>
    </
tr>
  </
table
El que me entendio porfis ayude.......gracias de todas formas
Cita:
Iniciado por angsanchez
He jugado un poco y he dado con ello:
Código PHP:
function habilitainfo(){ 
    
with (document.form1)
    {    
EMPRESA_ACTUAL.disabled false
for (
i=0i<regimen.lengthi++) regimen[i].disabled false
    }

(Básicamente, hay que recorrer los radios uno por uno.)
__________________
Una Vez Muerto el Perro.............Se acaba la Rabia :risa:
  #6 (permalink)  
Antiguo 21/02/2005, 13:03
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 19 años, 6 meses
Puntos: 3
Claro, hasta ahora lo que se ha hecho es deshabilitarlo, no cambiar su valor; hay que quitar el estado "checked" o el valor del texto antes de deshabilitarlo:
function deshabilitainfo(){
with (document.form1)
{
EMPRESA_ACTUAL.value = "";
EMPRESA_ACTUAL.disabled = true;

for(i=0; i<regimen.length; i++)
{ regimen[i].checked = false;
regimen[i].disabled = true;
}
}
}
__________________
Angel :cool:
  #7 (permalink)  
Antiguo 21/02/2005, 14:10
 
Fecha de Ingreso: febrero-2005
Ubicación: chile, Santiasko
Mensajes: 728
Antigüedad: 19 años, 3 meses
Puntos: 1
gracias compadrito de verdad te pasaste....

estaba casi cerca eso si



Cita:
Iniciado por angsanchez
Claro, hasta ahora lo que se ha hecho es deshabilitarlo, no cambiar su valor; hay que quitar el estado "checked" o el valor del texto antes de deshabilitarlo:
function deshabilitainfo(){
with (document.form1)
{
EMPRESA_ACTUAL.value = "";
EMPRESA_ACTUAL.disabled = true;

for(i=0; i<regimen.length; i++)
{ regimen[i].checked = false;
regimen[i].disabled = true;
}
}
}
__________________
Una Vez Muerto el Perro.............Se acaba la Rabia :risa:
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 13:22.