Foros del Web » Programando para Internet » PHP »

Mostrar campo dependiendo de la selección:

Estas en el tema de Mostrar campo dependiendo de la selección: en el foro de PHP en Foros del Web. tengo el siguiente formulario en html: Código HTML: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns= "http://www.w3.org/1999/xhtml" > <head> <meta http-equiv="Content-Type" content= "text/html; ...
  #1 (permalink)  
Antiguo 14/02/2010, 10:49
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 9 meses
Puntos: 14
Mostrar campo dependiendo de la selección:

tengo el siguiente formulario en html:

Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>

<body>
Menú para añadir usuarios:
<p>Nombre de usuario
  <input name="usuario" type="text" />
</p>
<p>Contraseña
  <input name="usuario" type="text" />
</p>
<p>
  E-mail
    <input name="usuario" type="text" />
</p>
<p>Rango: 
 <label>
    <select name="ppppp" size="1" id="ppppp">
      <option value="1">Vicerrectorado Calidad</option>
      <option value="2">Vicerectorado Grado</option>
      <option value="3">Vicerrectorado Estudiantes</option>
      <option value="4">Coordinador CGIC</option>
      <option value="5">Miembro CGIC</option>
    </select>
  </label>

</p>
<p>
  Titulación  
  <label>
    <select name="ppppp" size="1" id="ppppp">
      <option selected="selected">Ninguna</option>
      <option value="magisterio">Magisterio</option>
      <option value="empresariales">Empresariales</option>
      <option value="derecho">Derecho</option>
    </select>
  </label>
</p>
</body>
</html> 
Un formulario simple, el problema es que necesito que el campo titulación solo sea visible si se ha selecionado anteriormente en rango alguna de estas opciones:

Código HTML:
 <option value="3">Vicerrectorado Estudiantes</option>
      <option value="4">Coordinador CGIC</option>
      <option value="5">Miembro CGIC</option> 
¿Hay alguna manera de hacerlo en php? ¿O tiene que ser javascript?¿Algún ejemplo?
  #2 (permalink)  
Antiguo 14/02/2010, 11:29
Avatar de CdG
CdG
 
Fecha de Ingreso: marzo-2008
Mensajes: 114
Antigüedad: 16 años, 8 meses
Puntos: 2
Respuesta: Mostrar campo dependiendo de la selección:

creo que esto te puede ayudar
saludos
__________________
no quiero ser un árbol y caminar
Jacinto Piedra
  #3 (permalink)  
Antiguo 14/02/2010, 12:21
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 9 meses
Puntos: 14
Respuesta: Mostrar campo dependiendo de la selección:

Ni idea de como usarlo tio.
  #4 (permalink)  
Antiguo 14/02/2010, 17:53
Avatar de Kaze71  
Fecha de Ingreso: enero-2010
Mensajes: 44
Antigüedad: 14 años, 9 meses
Puntos: 4
Respuesta: Mostrar campo dependiendo de la selección:

Prueba con algo así:

Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<style type="text/css">
  p#titulacion{
    display:none;
  }
</style>
<script type="text/javascript">
  function comprobar(){
    var etiqueta = document.getElementById('titulacion');
	var source = document.getElementById('ppppp');
    if(source.selectedIndex >= 2)
    {
      etiqueta.style.display = 'block';
    }
    else
    {
      etiqueta.style.display = 'none';
    }
  }
</script>
</head>

<body>
Menú para añadir usuarios:
<p>Nombre de usuario
  <input name="usuario" type="text" />
</p>
<p>Contraseña
  <input name="usuario" type="text" />
</p>
<p>
  E-mail
    <input name="usuario" type="text" />
</p>
<p>Rango: 
 <label onclick="comprobar()">
    <select name="ppppp" size="1" id="ppppp">
      <option value="1">Vicerrectorado Calidad</option>
      <option value="2">Vicerectorado Grado</option>
      <option value="3">Vicerrectorado Estudiantes</option>
      <option value="4">Coordinador CGIC</option>
      <option value="5">Miembro CGIC</option>
    </select>
  </label>

</p>
<p id="titulacion">
  Titulación  
  <label>
    <select name="ppppp" size="1" id="ppppp">
      <option selected="selected">Ninguna</option>
      <option value="magisterio">Magisterio</option>
      <option value="empresariales">Empresariales</option>
      <option value="derecho">Derecho</option>
    </select>
  </label>
</p>
</body>
</html> 

Última edición por Kaze71; 14/02/2010 a las 18:15
  #5 (permalink)  
Antiguo 14/02/2010, 18:01
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 9 meses
Puntos: 29
Respuesta: Mostrar campo dependiendo de la selección:

El código anterior se puede simplificar y mejorar mucho a simple vista.
Para empezar, la función cambiar no existe ?¿??¿ y los onblur de los option todos innecesarios.

Código PHP:
Ver original
  1. <script type="text/javascript">
  2.   function comprobar(){
  3.     var titulacion = document.getElementById('titulacion');
  4.     var rango = document.getElementById('rango');
  5.     if(rango.value > 2)
  6.     {
  7.       titulacion.style.display = 'block';
  8.     }
  9.     else
  10.     {
  11.       titulacion.style.display = 'none';
  12.     }
  13.   }
  14. </script>
  15. </head>
  16.  
  17. <body>
  18. Men&#250; para añadir usuarios:
  19. <p>Nombre de usuario
  20.   <input name="usuario" type="text" />
  21. </p>
  22. <p>Contrase&#241;a
  23.  <input name="password" type="password" />
  24. </p>
  25. <p>
  26.   E-mail
  27.     <input name="email" type="text" />
  28. </p>
  29. <p>Rango:
  30.  <label>
  31.     <select onchange="comprobar();" name="rango" id="rango">
  32.       <option value="1">Vicerrectorado Calidad</option>
  33.       <option value="2">Vicerectorado Grado</option>
  34.       <option value="3">Vicerrectorado Estudiantes</option>
  35.       <option value="4">Coordinador CGIC</option>
  36.       <option value="5">Miembro CGIC</option>
  37.     </select>
  38.   </label>
  39.  
  40. </p>
  41. <div id="titulacion">
  42.   Titulaci&#243;n  
  43.  <label>
  44.     <select name="titulacion" size="1" id="titulacion">
  45.       <option selected="selected">Ninguna</option>
  46.       <option value="magisterio">Magisterio</option>
  47.       <option value="empresariales">Empresariales</option>
  48.       <option value="derecho">Derecho</option>
  49.     </select>
  50.   </label>
  51. </div>
  52. </body>
  53. </html>

Ah por cierto, este tema no tiene nada que ver co nphp.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #6 (permalink)  
Antiguo 14/02/2010, 18:15
Avatar de Kaze71  
Fecha de Ingreso: enero-2010
Mensajes: 44
Antigüedad: 14 años, 9 meses
Puntos: 4
Respuesta: Mostrar campo dependiendo de la selección:

Oh, lo siento, fueron de una prueba anterior xDD, mensaje editado, disculpen las molestias
  #7 (permalink)  
Antiguo 15/02/2010, 03:07
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 9 meses
Puntos: 14
Respuesta: Mostrar campo dependiendo de la selección:

Lo pruebo y os digo gracias.

Etiquetas: dependiendo, campos
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 12:55.