Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problema AJAX cargar lista desplegable

Estas en el tema de Problema AJAX cargar lista desplegable en el foro de Frameworks JS en Foros del Web. Buenos días, estoy teniendo un problema al cargar una lista desplegable mediante AJAX. Les explico lo que me sucede, utilizo un evento onChange en una ...
  #1 (permalink)  
Antiguo 16/03/2010, 04:08
 
Fecha de Ingreso: mayo-2005
Mensajes: 68
Antigüedad: 19 años, 6 meses
Puntos: 0
Pregunta Problema AJAX cargar lista desplegable

Buenos días, estoy teniendo un problema al cargar una lista desplegable mediante AJAX. Les explico lo que me sucede, utilizo un evento onChange en una lista de categorías, la idea es que cuando seleccionan un valor de dicha lista se crea otra lista con subcategorías de la anterior. El caso es que funciona, me crea la lista de subcategorías. El problema es que solo funciona la primera vez. Si se vuelve a seleccionar otra categoría, no vuelve a cargar la 2° lista.

Supongo que será un error común.

Tienen idea de que me puede estar pasando?

Muchas gracias, Saludos!
  #2 (permalink)  
Antiguo 16/03/2010, 06:12
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 10 meses
Puntos: 126
Respuesta: Problema AJAX cargar lista desplegable

Hola

Así es un poco difícil decir que es lo que puede estar pasando. Mírate esta liga

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 16/03/2010, 08:45
 
Fecha de Ingreso: mayo-2005
Mensajes: 68
Antigüedad: 19 años, 6 meses
Puntos: 0
Pregunta Respuesta: Problema AJAX cargar lista desplegable

Cita:
Iniciado por Adler Ver Mensaje
Hola

Así es un poco difícil decir que es lo que puede estar pasando. Mírate esta liga

Suerte
Hola Adler, muchas gracias por contestarme, he revisado tu enlace, pero en principio no ha resuelto mi problema.

No sé si tendrá que ver con usar innerHTML. He probado a usar un alert con el resultado que obtengo, en vez de poner la lista desplegable, y de esta manera si se ejecuta todo el tiempo, y veo un mensaje con los datos del select nuevo. Por este motivo creo que el problema está al insertarlo en el formulario.

El código que uso para insertarlo es:

Código:
var myDiv = document.getElementById("divSubcategories");
      myDiv.innerHTML = results;
Teneis idea de cual es el problema??

Saludos!
  #4 (permalink)  
Antiguo 17/03/2010, 07:45
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 10 meses
Puntos: 126
Respuesta: Problema AJAX cargar lista desplegable

Hola

El elemento con id divSubcategories ha de ser un div, td, etc... no puede ser la id del select que se va a crear. En la respuesta se ha de enviar el select ya totalmente montado, es decir

Cita:
<select>
<option value="a">a</option>
......
</select>
Por otro lado, entiendo que results es una var cuyo valor es algo como datos_recibidos.responseText;, si no es así has de añadirle responsetext

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 17/03/2010, 08:11
 
Fecha de Ingreso: mayo-2005
Mensajes: 68
Antigüedad: 19 años, 6 meses
Puntos: 0
De acuerdo Respuesta: Problema AJAX cargar lista desplegable

Cita:
Iniciado por Adler Ver Mensaje
Hola

El elemento con id divSubcategories ha de ser un div, td, etc... no puede ser la id del select que se va a crear. En la respuesta se ha de enviar el select ya totalmente montado, es decir

Por otro lado, entiendo que results es una var cuyo valor es algo como datos_recibidos.responseText;, si no es así has de añadirle responsetext

Suerte
Hola Adler, gracias por contestarme de nuevo. Efectivamente, el elemento divSubcategories es el div que va a contener el select. Y en la respuesta envío el select entero, como me indicas. De hecho la primera vez funciona correctamente.

Results es la respuesta entera devuelta por la página php que llamo desde AJAX, que en este caso es una lista desplegable.

Esta mañana he conseguido solucionarlo. El problema era que cada vez que seleccionaban una opción de una lista, volvía a añadir un elemento select en el div. Como ya existía uno con el mismo nombre no me permitia añadirlo. Si cambio el nombre por caba nuevo select lo carga sin problemas.

Saludos, y gracias por ayudarme.
  #6 (permalink)  
Antiguo 23/03/2010, 03:57
 
Fecha de Ingreso: mayo-2005
Mensajes: 68
Antigüedad: 19 años, 6 meses
Puntos: 0
Respuesta: Problema AJAX cargar lista desplegable

Podeis decirme como podría insertar una lista desplegable con el mismo nombre que una que ya existe en esa misma capa? Supongo que debería eliminarla en la función de AJAX y volverla a crear, pero cuando intento eliminarla no me la elimina.

Saludos.
  #7 (permalink)  
Antiguo 23/03/2010, 05:05
 
Fecha de Ingreso: mayo-2005
Mensajes: 68
Antigüedad: 19 años, 6 meses
Puntos: 0
Respuesta: Problema AJAX cargar lista desplegable

Cita:
Iniciado por Jorge05 Ver Mensaje
Podeis decirme como podría insertar una lista desplegable con el mismo nombre que una que ya existe en esa misma capa? Supongo que debería eliminarla en la función de AJAX y volverla a crear, pero cuando intento eliminarla no me la elimina.

Saludos.
Finalmente lo acabe de solucionar, realmente sencillo, no entiendo porque no me funcionó al principio, cuando escribí este post.

Es tan simple como:

Código:
myDiv = document.getElementById("divCapa");
myDiv.innerHTML = "";
myDiv.innerHTML = results;

Etiquetas: ajax, desplegable, lista
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 06:00.