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

Cargar dos contenidos a la vez con AJAX

Estas en el tema de Cargar dos contenidos a la vez con AJAX en el foro de Frameworks JS en Foros del Web. Tengo una página, en la cual debo cargar dos divs al cargarse la página. El problema es que si lo hago con un solo objeto ...
  #1 (permalink)  
Antiguo 22/01/2007, 12:58
 
Fecha de Ingreso: noviembre-2001
Ubicación: Montevideo
Mensajes: 506
Antigüedad: 22 años, 5 meses
Puntos: 0
Cargar dos contenidos a la vez con AJAX

Tengo una página, en la cual debo cargar dos divs al cargarse la página.
El problema es que si lo hago con un solo objeto XMLHttpRequest, se me carga uno único div; calculo porque la variable enProceso está en true.

Es correcto utilizar dos objetos??

hacer algo como esto?
var http = getHTTPObject(); // Creamos el objeto XMLHttpRequest
var http2 = getHTTPObject(); // Creamos el objeto XMLHttpRequest

Desde ya muchas gracias.
__________________
Alvaro García
  #2 (permalink)  
Antiguo 23/01/2007, 12:45
 
Fecha de Ingreso: diciembre-2004
Ubicación: Iquique, Chile
Mensajes: 150
Antigüedad: 19 años, 4 meses
Puntos: 0
Re: Cargar dos contenidos a la vez con AJAX

Holas;

En el php donde obtienes lo que quieres que se cargue, lo puedes enviar en una sola respuestas separado por algún signo y cuando lo recuperes en el javascript lo separas mediante "split" y lo asignas a cada capa de forma independiente:

Código PHP:
En el php de respuesta:

echo 
$valores $valor1."|".$valor2;
-------------------------------------

with(document)
{
  var 
cadena resp.responseText;
  
separar cadena.split("|");
  var 
capa1 getElementById("c1").innerHTML separar[0];
  var 
capa2 getElementById("c2").innerHTML separar[1];

Algo así, debes probar.

Nos vemos.
  #3 (permalink)  
Antiguo 24/01/2007, 07:57
 
Fecha de Ingreso: enero-2007
Mensajes: 14
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: Cargar dos contenidos a la vez con AJAX

Si que puedes lanzar la carga de dos DIV al mismo tiempo, para ello tienes que llamar a cada objeto de una forma distinta. Yo hago lo siguiente:

Código PHP:
function cargarContenido(div){             
        eval(
"var contenedor_"+div+"=document.getElementById('contenedor_"+div+"');");                
        eval(
"var objeto_"+div+"=nuevoAjax();");                
        eval(
'objeto_'+div+'.open("POST", "includes/procesos.php",true);');
        eval(
'objeto_'+div+'.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");');
        eval(
'objeto_'+div+'.send("tabla='+div+'&valor='+d1+'");');                
        eval(
'objeto_'+div+'.onreadystatechange=function(){ if (objeto_'+div+'.readyState==4) { contenedor_'+div+'.innerHTML = objeto_'+div+'.responseText; } else {contenedor_'+div+'.innerHTML = "<img src=\'ajaxloader.gif\'>";}; } '); 
Yo cargo simultaneamente 7 u 8 combos (DIVs) y me funciona a la perfección.

Ni ke decir tiene ke tendras ke llamar dos veces la funcion, una llamada por cada div
Código PHP:
<input type="button" onClick="cargarContenido('primer_div'); cargarContenido('segundo_div');"
Espero ke te sirva.
salu2.
  #4 (permalink)  
Antiguo 25/01/2007, 08:17
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años
Puntos: 35
Re: Cargar dos contenidos a la vez con AJAX

loading.......


apoyo a manuito(Dios que ternura de nick!)... recuerda que cuando haces AJAX de forma asincrona, ambas peticiones (Tus 2 objetos) se cargaran en separado, cada uno por su lado y no esperara a que UNO TERMINE para comenzar OTRO.


connection closed.
__________________

Maborak Technologies
  #5 (permalink)  
Antiguo 15/02/2007, 16:17
 
Fecha de Ingreso: febrero-2007
Mensajes: 6
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Cargar dos contenidos a la vez con AJAX

Cita:
Iniciado por nostromo_ Ver Mensaje
Holas;

En el php donde obtienes lo que quieres que se cargue, lo puedes enviar en una sola respuestas separado por algún signo y cuando lo recuperes en el javascript lo separas mediante "split" y lo asignas a cada capa de forma independiente:

Código PHP:
En el php de respuesta:

echo 
$valores $valor1."|".$valor2;
-------------------------------------

with(document)
{
  var 
cadena resp.responseText;
  
separar cadena.split("|");
  var 
capa1 getElementById("c1").innerHTML separar[0];
  var 
capa2 getElementById("c2").innerHTML separar[1];

Algo así, debes probar.

Nos vemos.



Podrias explicarlo un poco mejor ?
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 03:50.