Foros del Web » Programando para Internet » Javascript »

Problemas con codigo javascript

Estas en el tema de Problemas con codigo javascript en el foro de Javascript en Foros del Web. Que tal a todos, espero me puedan ayudar con esto, estoy haciendo una pagina que en un enlace carga un menu con un evento ajax, ...
  #1 (permalink)  
Antiguo 27/05/2010, 18:44
Avatar de Master_raven  
Fecha de Ingreso: junio-2008
Ubicación: Guatemala City, Guatemala, Guatemala
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 3
Problemas con codigo javascript

Que tal a todos, espero me puedan ayudar con esto, estoy haciendo una pagina que en un enlace carga un menu con un evento ajax, que seria este

Código HTML:
function CargarContenido(Pagina,Destino){
   var contenedor;
   var ajax;
   LoadingOn()

   contenedor = document.getElementById(Destino);
   ajax = NuevoAjax(ajax);
   ajax.open("GET", Pagina, true);
   ajax.onreadystatechange=function() {
      if (ajax.readyState==4) {
         contenedor.innerHTML = ajax.responseText;
      }
   }
   ajax.send(null);
}
El evento me funciona muy bien y me carga el submenu con esto no tengo ningun problema, el problema se ya que yo e agregado un Loading para mi pagina y al momento de dar click en el enlace este se activa y al momento de terminar la carga del sub menu este deberia de desactivarce, pero no pasa nada

estos son mi Loadin On y Off

Código HTML:
//Evento para abrir el cargando de la pagina
function LoadingOn() {
	div = document.getElementById('Cargando');
	div.style.display='block';
}

//Evento para cerrar el cargando de la pagina
function LoadingOff() {
	div = document.getElementById('Cargando');
	div.style.display='none';
}
el on lo ago con evento onclick y todo bien y el off lo imprimo en la pagina cargada con ajax

Código HTML:
<div id='CPanelLg'>
<div id='CPanelLh'>Opciones Extras</div>
<div id='CPanelLb'>
&nbsp;&nbsp;&nbsp;<a onclick=\"javascript:Abrir_ventana('_php/ven/sallmod.php');\" title='Ver ttodos los modelos' href='#'><img src='img/pert_chart.png' />&nbsp;&nbsp;Ver Todos los Modelos</a><br /></div>
</div>
<script type="text/javascript">
LoadingOff()
</script> 
lo que me rspondo es que como la pagina se esta cargando sin actualizar el evento no se ejecuta, pero bueno talves alguien me puede ayudar.


Gracias

Última edición por Master_raven; 29/05/2010 a las 14:30
  #2 (permalink)  
Antiguo 28/05/2010, 05:50
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Problemas con codigo javascript

Hola

En la función CargadoContenido usa los tres primeros estados para mostrar la imagen de cargando

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 29/05/2010, 14:30
Avatar de Master_raven  
Fecha de Ingreso: junio-2008
Ubicación: Guatemala City, Guatemala, Guatemala
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 3
Respuesta: Problemas con codigo javascript

Perdon se me olvido colocarlo, la funcion LoadingOn() la coloco en el evento CargarContenido() y e LoadingOff() lo coloco en el contenido cargado, el LoadingOn() me funciona de maravilla pero el LoadingOff() no se ejecuta
  #4 (permalink)  
Antiguo 29/05/2010, 16:38
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Problemas con codigo javascript

Hola

Esto parece mas sencillo que tener que mandar a las funciones

Código Javascript:
Ver original
  1. if (ajax.readyState==1 || ajax.readyState==2 || ajax.readyState==3) {
  2. document.getElementById('Cargando').style.display='block';
  3. }
  4. else if (ajax.readyState==4){
  5. if(ajax.status==200){  
  6. document.getElementById('Cargando').style.display='none';
  7. contenedor.innerHTML = ajax.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 30/05/2010, 14:20
Avatar de Master_raven  
Fecha de Ingreso: junio-2008
Ubicación: Guatemala City, Guatemala, Guatemala
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 3
Respuesta: Problemas con codigo javascript

Código Javascript:
Ver original
  1. function CargarContenido(Pagina,Destino){
  2.    var contenedor;
  3.    var ajax;
  4.    
  5.    contenedor = document.getElementById(Destino);
  6.    ajax = NuevoAjax(ajax);
  7.    ajax.open("GET", Pagina, true);
  8.    ajax.onreadystatechange=function() {
  9.       if (ajax.readyState==1 || ajax.readyState==2 || ajax.readyState==3) {
  10.           document.getElementById('Cargando').style.display='block';
  11.       } else if (ajax.readyState==4){
  12.           if(ajax.status==200){  
  13.               document.getElementById('Cargando').style.display='none';
  14.               contenedor.innerHTML = ajax.responseText;
  15.           }
  16.       }
  17.    }
  18.    ajax.send(null);
  19. }

Me a quedado asi, estoy bien o lo e colocado mal?
  #6 (permalink)  
Antiguo 30/05/2010, 16:03
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Problemas con codigo javascript

Hola

Cita:
Iniciado por Master_raven Ver Mensaje
Me a quedado asi, estoy bien o lo e colocado mal?
Está bien

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;" />
  #7 (permalink)  
Antiguo 31/05/2010, 19:28
Avatar de Master_raven  
Fecha de Ingreso: junio-2008
Ubicación: Guatemala City, Guatemala, Guatemala
Mensajes: 95
Antigüedad: 15 años, 10 meses
Puntos: 3
Respuesta: Problemas con codigo javascript

Exelente hoy lo e provado y quedo de lo mejor, deveras que te estoy muy agradecido

Etiquetas: Ninguno
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 15:40.