Foros del Web » Programando para Internet » Javascript »

desabilitar campos usando condicion

Estas en el tema de desabilitar campos usando condicion en el foro de Javascript en Foros del Web. Hola buen dia nuevamente molestando al foro. Tengo un pequeño inconveniente , en un formulario tengo una opcion que el usuario debe llenar (tiene alguna ...
  #1 (permalink)  
Antiguo 06/10/2009, 10:25
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 15 años, 1 mes
Puntos: 0
desabilitar campos usando condicion

Hola buen dia nuevamente molestando al foro.

Tengo un pequeño inconveniente , en un formulario tengo una opcion que el usuario debe llenar (tiene alguna enfermedad) si el usuario responde que si se llena el campo siguiente que es (cuales) si responde que no debería bloquear el campo cuales y pasar al siguiente campo, he consultado pero no logro resolverlo, laguien me puede ayudar hice algo como esto vean.

A Padecido o Padece Alguna Enfermedad:
<select name='enfermedad'id='enfermedad'>
<option value ="S" >Si</option>
<option value ="N" >No</option>
</select ><br><br>


<script>

function funcion();

var enfermedad = window.document.getlemetbyid('select').enfermedad;

//aca abrimos todos los campos

window.document.getlementbyid('cuales').disabled = false

if(enfermedad == 'N') {

//aqui va lo que pondras el disable

window.document.getlementbyid('cuales').disabled = true

}


</script>
Cuales:
<input type='text' name='cuales' id='cuales'size='104'>
<br> <br>
  #2 (permalink)  
Antiguo 06/10/2009, 10:33
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 4 meses
Puntos: 839
Respuesta: desabilitar campos usando condicion

El nombre de la función es getElementById (además, sensible a mayúsculas).

En lugar de esto:
document.getlemetbyid('select').enfermedad
Probablemente la idea era:
document.getElementById('enfermedad').value

Como recomendación, no uses el mismo nombre para la variable y para el name del campo ya que causa problemas en Internet Explorer.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 07/10/2009, 12:50
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: desabilitar campos usando condicion

David:

Gracias por responder, me cuesta entender (estoy iniciando en esto) disculpa podrías ampliarme mas la info. Ya cambie lo que estaba mal escrito pero no se que mas hacer el campo sigue desbloqueado al elegir no-
<script>

function funcion(x){

var enfermedad = window.document.getElementById('enfermedad').value

//aca abrimos todos los campos

window.document.getElementById('cuales').disabled = false

if(enfermedad == 'N') {

//aqui va lo que pondras el disable

window.document.getElementById('cuales').disabled = true

}
}

</script>
Gracias por tu ayuda
  #4 (permalink)  
Antiguo 07/10/2009, 12:56
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 4 meses
Puntos: 839
Respuesta: desabilitar campos usando condicion

¿En qué momento llamas a la función? ¿Seguro que tienes un elemento con id="cuales"?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 07/10/2009, 22:14
 
Fecha de Ingreso: febrero-2009
Mensajes: 44
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: desabilitar campos usando condicion

Código HTML:
<script type="text/javascript">
    function nombreFuncion(){
        if(document.getElementById('enfermedad')){
            var cEnfermedad = document.getElementById('enfermedad')
            if(cEnfermedad.value == 'N'){
                if(document.getElementById('cuales')){
                    document.getElementById('cuales').disableb = true;
                }
            }
        }
    }
</script> 
Espero te sirva y si alguien ve un error en la funcion, favor corregir...

Saludos

Última edición por eseceve; 07/10/2009 a las 22:15 Razón: Edite para destacar el código
  #6 (permalink)  
Antiguo 08/10/2009, 01:00
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 5 meses
Puntos: 1284
Respuesta: desabilitar campos usando condicion

Hola:

La verdad es que algunas condiciones son innecesarias, ya que se supone que los elementos existen, y en vez de disableb es disabled (lo tienes terminado en "b" y es con "d")

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 08/10/2009, 11:54
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: desabilitar campos usando condicion

David:

Si mira la función
Código HTML:
<html>
	
<form action='fscons.php' method='post' name='salud_usuario' target='_self' id='salud_usuario' >
											
Ultimo Papanicolau:
				<input  name='ultimo_papanicolau'type='text'id= 'ultimo_papanicolau'size='30'>
N&uacute;mero de Partos:
				<select name='numero_partos'id='numero_partos'>
				<option>0</option><option>1</option><option>2</option><option>3</option><option>4</option>	
			         </select ><br><br>		
				
N&uacute;mero de Abortos:
				<select name='numero_abortos'id='numero_abortos'>
				<option>0</option><option>1</option><option>2</option><option>3</option><option>4</option>	
			        </select ><br><br>			
	
	A Padecido o Padece Alguna Enfermedad:
		<select name='enfermedad'id='enfermedad' getElementById='cEnfermedad'>	
			<option value ="S" >Si</option>
			<option value ="N" >No</option>
			</select ><br><br>														
															
<script type="text/javascript">
    function desabilitarCampo(){
        if(document.getElementById('enfermedad')){
            var cEnfermedad = document.getElementById('enfermedad')
            if(cEnfermedad.value == 'N'){
                if(document.getElementById('cuales')){
                    document.getElementById('cuales').disabled = true;
                }
            }
        }
    }
</script>															
				Cuales:
				<input type='text' name='cuales' id='cuales'getElementById='cuales' size='104'> <br> <br>																																							
				<center><input id="button" type="button" value="Anterior" onclick="javascript:history.go(-1);">
				 <input id="button1" type="submit" value="Siguiente"> </center> </b></i>													 															
</form></html> 
pero aun sigue sin funcionar.

Aqui mando a guardar los datos Mysql
Código PHP:
<?php
                         
        $SQL
="insert into salud_usuario
        (id_usuario,
        numero_partos,
        numero_abortos,
        ultimo_papanicolau,
        enfermedad,
        cuales,
        lugar) 
    
        values ('" 
.$_POST['id_usuario'] . "','" 
            
$_POST['numero_partos'] . "','" 
            
$_POST['numero_abortos'] . "','" 
            
$_POST['ultimo_papanicolau'] . "',    '" 
            
$_POST['enfermedad'] . "','" .
             
$_POST['cuales']. "','" .
             
$_POST['lugar']. "')";
                    
                    
mysql_query($SQL);
        
            if (
mysql_errno()>0)
                {
                echo 
mysql_errno() . " - " mysql_error() . " <br>";
                }
?>
  #8 (permalink)  
Antiguo 08/10/2009, 19:31
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: desabilitar campos usando condicion

Gracias a los que respondieron

Consultando otras preguntas en el foro lo pude resolver.
Así me quedo

Código HTML:
<script language="JavaScript">
   function MOSTRAR(){
     if (document.salud_usuario.enfermedad.value != "S") {
 	document.salud_usuario.cuales.disabled = true;
    }else{
 	if (document.salud_usuario.enfermedad.value == "N") {
            document.salud_usuario.cuales.disabled = false;
 	}
   }
 }
 </script>

A Padecido o Padece Alguna Enfermedad:
															<select name='enfermedad'id='enfermedad' onChange="javascript:MOSTRAR();">	
																<option value ="S" >Si</option>
																<option value ="N" >No</option>
																</select ><br><br>														
Cuales:
<input  name='cuales' type='text'size='104'> <br> <br> 
Mil gracias a todos son geniales
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 21:19.