Foros del Web » Programando para Internet » Javascript »

Reemplazar campos.

Estas en el tema de Reemplazar campos. en el foro de Javascript en Foros del Web. Me marca "Object required", quité la línea y si me desaparece el texto, pero no vuelve a aparecer la lista, y ahora el error me ...

  #31 (permalink)  
Antiguo 19/06/2009, 13:27
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Reemplazar campos.

Me marca "Object required", quité la línea y si me desaparece el texto, pero no vuelve a aparecer la lista, y ahora el error me lo marca en:

Código javascript:
Ver original
  1. list.style.display = "inline";
  #32 (permalink)  
Antiguo 19/06/2009, 13:30
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Reemplazar campos.

Realmentes es raro... por si acaso, ¿no debería ser lista en lugar de list?

¿Tienes un enlace a la página?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #33 (permalink)  
Antiguo 19/06/2009, 16:12
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Reemplazar campos.

Lo que pasa es que cambié el nombre.

No tengo hosteada la página.

Te pongo el código por partes, tal vez esté algo mal.

Ésta es la función para ocultar la lista y mostrar el texto:

Código javascript:
Ver original
  1. function mostrar() {
  2.  
  3.       var texto = document.getElementById("stipo");
  4.       var lista = document.getElementById("tipo");
  5.       texto.innerHTML = lista.value;
  6.       texto.style.display = "inline";
  7.       lista.style.display = "none";
  8.       }

Ésta la función para ocultar el texto y mostrar la lista:

Código javascript:
Ver original
  1. function ocultar() {
  2.  
  3.       var text = document.getElementById("stipo");
  4.       var list = document.getElementById("tipo");
  5.       text.style.display = "none";
  6.       list.style.display = "inline";
  7.       }

Éstos son el select y el botón:

Código html:
Ver original
  1. <p class="Estilo3">Tipo: __<u>
  2.       <span id="stipo"><select name="tipo" id="tipo" onchange="mostrar();" >
  3.           <option value="asdf">asdf</option>
  4.         </select>
  5.         </span>
  6.         </u>
  7.         <input type="button" id="boton" name="boton" value="Limpiar" onclick="ocultar();" />

¿Encuentras algo mal?

Saludos.
  #34 (permalink)  
Antiguo 19/06/2009, 17:58
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Reemplazar campos.

El problema es que estás anidando el select dentro del span. Coloca el select fuera del span, como te había indicado:
Código HTML:
Ver original
  1. <span id="stipo"></span><select id="tipo">...</select>
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #35 (permalink)  
Antiguo 22/06/2009, 08:37
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Reemplazar campos.

Muchas gracias por tu ayuda, perdón por responder hasta ahora.

Otra pregunta, ¿habrá alguna manera de hacer esta función general, no estar haciendo una para cada select?

Saludos.
  #36 (permalink)  
Antiguo 22/06/2009, 09:20
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Reemplazar campos.

Puedes recibir como parámetro de la función el id del select. Así, al obtener el elemento con document.getElementById() usas ese parámetro.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #37 (permalink)  
Antiguo 22/06/2009, 11:11
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Reemplazar campos.

Ya lo tengo, muchas gracias.
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 19:05.