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

No carga página en el div indicado

Estas en el tema de No carga página en el div indicado en el foro de Frameworks JS en Foros del Web. Hola, mi problema es, que cuando llamo a la función callPage desde la función activeTab(tab), en la primera llamada el resultado es Cargando...., en cambio ...
  #1 (permalink)  
Antiguo 05/11/2010, 03:48
 
Fecha de Ingreso: octubre-2010
Mensajes: 5
Antigüedad: 14 años
Puntos: 0
Exclamación No carga página en el div indicado

Hola, mi problema es, que cuando llamo a la función callPage desde la función activeTab(tab), en la primera llamada el resultado es Cargando...., en cambio en la segunda llamada carga la página indicada correctamente en el div contenido.

Desde el php se llama bien a la función activeTab(tab) por eso no la he incluido. El problema es que no entiendo por qué funciona en la segunda llamada y en la primera no... :(

Ante cualquier ayuda, gracias de antemano ;)



Código javascript:
Ver original
  1. var req;
  2. function callPage(pageUrl, divElementId, loadinglMessage, pageErrorMessage) {
  3.      document.getElementById(divElementId).innerHTML = loadinglMessage;
  4.      try {
  5.      req = new XMLHttpRequest(); /* e.g. Firefox */
  6.      } catch(e) {
  7.        try {
  8.        req = new ActiveXObject("Msxml2.XMLHTTP");  /* some versions IE */
  9.        } catch (e) {
  10.          try {
  11.          req = new ActiveXObject("Microsoft.XMLHTTP");  /* some versions IE */
  12.          } catch (E) {
  13.           req = false;
  14.          }
  15.        }
  16.      }
  17.      req.onreadystatechange = function() {responsefromServer(divElementId, pageErrorMessage);};
  18.      req.open("GET",pageUrl,true);
  19.      req.send(null);
  20.   }
  21.  
  22. function responsefromServer(divElementId, pageErrorMessage) {
  23.    var output = '';
  24.    if(req.readyState == 4) {
  25.       if(req.status == 200) {
  26.          output = req.responseText;
  27.          document.getElementById(divElementId).innerHTML = output;
  28.          } else {
  29.          document.getElementById(divElementId).innerHTML = pageErrorMessage+"\n"+output;
  30.          }
  31.       }
  32.   }
  33.  
  34. /* Funcion para activar pestañas*/
  35. function activeTab(tab){  
  36.        
  37.         document.getElementById("tab1").className = "";
  38.         document.getElementById("tab2").className = "";
  39.         document.getElementById("tab3").className = "";
  40.         document.getElementById("tab4").className = "";
  41.         document.getElementById("tab5").className = "";
  42.         document.getElementById("tab"+tab).className = "current";
  43.  
  44.         switch(tab){
  45.         case 1:
  46.             callPage('menu2_inicio.html', 'menu2', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  47.             sleep(1);
  48.             callPage('cont_inicio.html', 'contenido', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  49.             break;
  50.         case 2:
  51.             callPage('menu2_pacientes.html', 'menu2', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  52.             callPage('cont_PA1.html', 'contenido', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  53.             break;
  54.         case 3:
  55.             callPage('menu2_profesionales.html', 'menu2', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  56.             callPage('cont_PR1.html', 'contenido', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  57.             break; 
  58.         case 4:
  59.             callPage('menu2_historiales.html', 'menu2', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  60.             callPage('cont_HC1.html', 'contenido', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  61.             break;
  62.         case 5:
  63.             callPage('menu2_admin.html', 'menu2', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  64.             callPage('cont_admin1.html', 'contenido', '<img src=\"loading.gif\" /> Cargando...', 'Error en la carga... <img src=\"error_caution.gif\" />');
  65.             break;
  66.     }  
  67. }

Última edición por pimby; 05/11/2010 a las 04:52 Razón: resaltador de código añadido
  #2 (permalink)  
Antiguo 09/11/2010, 16:25
Avatar de iandrade  
Fecha de Ingreso: septiembre-2006
Ubicación: Xalapa, Veracruz, MÉXICO.
Mensajes: 171
Antigüedad: 18 años, 1 mes
Puntos: 6
Respuesta: No carga página en el div indicado

Tu problema es que usas una sola variable(req) para hacer las 2 consultas al mismo tiempo, solo por eso responde solo la segunda
__________________
No todo lo que se hace en segundo plano es AJAX
  #3 (permalink)  
Antiguo 10/11/2010, 10:48
 
Fecha de Ingreso: octubre-2010
Mensajes: 5
Antigüedad: 14 años
Puntos: 0
Respuesta: No carga página en el div indicado

Gracias por tu aportación iandrade.
Al final cambié el código ...

Etiquetas: ajax, carga
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 05:53.