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

poner un ajax loading en evento onclick

Estas en el tema de poner un ajax loading en evento onclick en el foro de Frameworks JS en Foros del Web. Hola chic@s. Mi duda es la siguiente: He visto varios ejemplos de cómo poner el ajax loading en mi sitio web, pero ninguno de ellos ...
  #1 (permalink)  
Antiguo 15/05/2012, 01:58
Avatar de aniMAYtions  
Fecha de Ingreso: diciembre-2007
Ubicación: Granada
Mensajes: 519
Antigüedad: 17 años
Puntos: 2
poner un ajax loading en evento onclick

Hola chic@s.

Mi duda es la siguiente:
He visto varios ejemplos de cómo poner el ajax loading en mi sitio web, pero ninguno de ellos se adapta a mis necesidades. Y creo que tiene que haber una forma de hacerlo minimizando código.

La cosa es que me gustaría que saliera el mensaje de carga y la imagen correspondiente automáticamente al pulsar un botón y sólo si la consulta tarda más de, por ejemplo, 3 segundos. Por ejemplo, para consultas a la base de datos.

Los ejemplos que he visto se realizan en el onload de la página, y la cosa es que sólo se cargarían al inicio de la web porque lo demás lo realiza usando xajax.

Mientras tanto seguiré buscando y si encuentro algo os lo comunico.

Gracias por la ayuda!!
  #2 (permalink)  
Antiguo 15/05/2012, 10:58
 
Fecha de Ingreso: mayo-2010
Mensajes: 65
Antigüedad: 14 años, 7 meses
Puntos: 5
Respuesta: poner un ajax loading en evento onclick

En principio sería lo siguiente:

tiempo="";
$('#id').click(function(){
tiempo=setTimeout(function(){
$('#loading').show();
},3000);
$.post("url",{paramentros:paramentros},function(da ta){
clearTimeout(tiempo);
$('#loading').hide();
})

En resumen: Haces un evento click y pones un timer de 3 segundos, el loading empezara a salir a los 3 segundos en caso de que tarde menos paras el timer y no mostrara la imagen! Saludos!
__________________
perfumes de imitacion

Etiquetas: ajax, evento, loading, onclick
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:43.