Foros del Web » Programando para Internet » Javascript »

Donde poner la img del Cargando en Ajax

Estas en el tema de Donde poner la img del Cargando en Ajax en el foro de Javascript en Foros del Web. Hola amigos tengo una funcion que me carga los resultados de una consulta por get llamando a un ajax Código: <script type="text/javascript"> function mostrarSecciones(str) { ...
  #1 (permalink)  
Antiguo 21/05/2012, 22:19
Avatar de kernelcom-com  
Fecha de Ingreso: mayo-2008
Ubicación: Lima
Mensajes: 216
Antigüedad: 16 años
Puntos: 3
Información Donde poner la img del Cargando en Ajax

Hola amigos tengo una funcion que me carga los resultados de una consulta por get llamando a un ajax

Código:
<script type="text/javascript">
function mostrarSecciones(str)
{
if (str=="")
  {
  document.getElementById("txtHint").innerHTML="";
  return;
  } 
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","columna-deSecciones.php?s="+str,true);
xmlhttp.send();
}
</script>

<form name="seccio">
<select name="secciones" onChange="mostrarSecciones(this.value)">
<option value="">Seleccione una secci&oacute;n:</option>
<option value="1">Mas Leidos</option>
<option value="2">Seccion 2</option>
<option value="3">Seccion 3</option>
</select>
</form>
<br />
<div id="txtHint"><b>Consulta alguna seccion.</b></div>
Quisiera saber donde pongo la accion para poner un fig con la palabra cargando, gracias por sus sabios consejos, saludos.
__________________
Las ideas estimulan la mente.(Eric Hoffer)
http://www.reycarlos.com
http://www.clasificadosde.com
  #2 (permalink)  
Antiguo 21/05/2012, 22:25
Avatar de blakmetall  
Fecha de Ingreso: diciembre-2010
Ubicación: Jalisco
Mensajes: 181
Antigüedad: 13 años, 5 meses
Puntos: 18
Respuesta: Donde poner la img del Cargando en Ajax

que tal amigo no voy a responder en concreto a tu pregunta,
pero me gustaria decirte como usar ajax mas facil

bajate el framework de javascript jquery.
y si quieres hacer una consulta con ajax es sencillisima

$.post('pagina_a_consultar.php',{"var1":"que tal","var2":"hola"},function(data){
//aqui data es resultado que diste en pagina_a_consultar.php
//los echo que hayas hecho, html que hayas incluido,etc
});

http://api.jquery.com/jQuery.post/
checa el enlace, abajo dice EXAMPLES ahi estan ejemplos mas claros.
__________________
To the end....
  #3 (permalink)  
Antiguo 21/05/2012, 22:33
Avatar de kernelcom-com  
Fecha de Ingreso: mayo-2008
Ubicación: Lima
Mensajes: 216
Antigüedad: 16 años
Puntos: 3
Respuesta: Donde poner la img del Cargando en Ajax

Gracias por tu respuesta, igual agradeceré quien pueda brindarme la respuesta, estoy seguro que no es muy difícil, gracias nuevamente.
__________________
Las ideas estimulan la mente.(Eric Hoffer)
http://www.reycarlos.com
http://www.clasificadosde.com
  #4 (permalink)  
Antiguo 22/05/2012, 00:24
Avatar de bet7o  
Fecha de Ingreso: febrero-2010
Ubicación: DF
Mensajes: 315
Antigüedad: 14 años, 3 meses
Puntos: 20
Respuesta: Donde poner la img del Cargando en Ajax

Lo puedes hacer así:

Código Javascript:
Ver original
  1. document.getElementById('IdElement').innerText = 'Cargando . . .';
  2. if(window.XMLHttpRequest)

y despues para quitarlo lo haces acá:

Código Javascript:
Ver original
  1. if(xmlhttp.readyState==4 && xmlhttp.status==200)
  2. {
  3.     document.getElementById('IdElement').innerText = '';

Ahora también debes tener en cuenta que pueden ocurrir errores, entonces tambien debes borrar el mensaje.

Como dice blakmetall existe jquery, entre otros tantos, que nos hacen la vida mas fácil pero también opino que es bueno saber como se hacen las cosas sin frameworks porque nos da mucha experiencia.

He conocido a personas que cuando no se puede usar un framework sufren mucho.

Saludos!
__________________
Pero el no contaba con una cosa, mi peligroso desinteres por la vida humana
  #5 (permalink)  
Antiguo 22/05/2012, 19:24
Avatar de kernelcom-com  
Fecha de Ingreso: mayo-2008
Ubicación: Lima
Mensajes: 216
Antigüedad: 16 años
Puntos: 3
Respuesta: Donde poner la img del Cargando en Ajax

Muchas gracias, pude hacerlo y me funciona a la perfección, pero pienso que no es recomendable hacer esta accion cuando la web tienen millones de visitas al día por la doble petición al servidor mysql para resolver los datos, gracias saludos.
__________________
Las ideas estimulan la mente.(Eric Hoffer)
http://www.reycarlos.com
http://www.clasificadosde.com
  #6 (permalink)  
Antiguo 23/05/2012, 07:37
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 12 años, 10 meses
Puntos: 181
Respuesta: Donde poner la img del Cargando en Ajax

No se si la manera como te lo indican sea la más adecuada. Para eso creo que es mejor usar los estados de la carga de ajax. Aquí te dejo un resumen de los mismos.

Cita:
readyState: Holds the status of the XMLHttpRequest. Changes from 0 to 4:
0: request not initialized
1: server connection established
2: request received
3: processing request
4: request finished and response is ready
Por tanto lo único que se debe hacer es crear un estado cuando el servidor esta conectado, es decir:

Código HTML:
if(xmlhttp.readyState==1)
{document.getElementById('IdElement').innerHTML='<img src="imagenes/ajax-loader.gif" border="0"/>Cargando, espere por favor...'}
__________________
Blog de humor http://elcuasatar.net63.net/
  #7 (permalink)  
Antiguo 25/05/2012, 13:03
Avatar de kernelcom-com  
Fecha de Ingreso: mayo-2008
Ubicación: Lima
Mensajes: 216
Antigüedad: 16 años
Puntos: 3
Respuesta: Donde poner la img del Cargando en Ajax

gracias chochera(amigo);

Como puedo agregar en codigo las variables que indicas en primera instancia, entiendo la parte del código, pero si puedes expresarlo en codigos sería excelente, gracias buen aporte, saludos.

Atte:
__________________
Las ideas estimulan la mente.(Eric Hoffer)
http://www.reycarlos.com
http://www.clasificadosde.com

Etiquetas: ajax, funcion
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 07:09.