Foros del Web » Programando para Internet » PHP »

ajax y progreso

Estas en el tema de ajax y progreso en el foro de PHP en Foros del Web. Buenas tardes a todos, Escribo por aca porque tengo una duda que me esta volviendo loca. Resulta que tengo una función en js llamada download ...
  #1 (permalink)  
Antiguo 11/11/2016, 09:06
 
Fecha de Ingreso: enero-2009
Mensajes: 178
Antigüedad: 15 años, 10 meses
Puntos: 2
ajax y progreso

Buenas tardes a todos,
Escribo por aca porque tengo una duda que me esta volviendo loca.
Resulta que tengo una función en js llamada download que crea un archivo excel que posteriormente es descargado a través de un appendChild(). Resulta que paralelamente mientras se crea el archivo (tarda aprox 3 min en crearse) consulto a una funcion llamada getProgress que tiene el progreso actual de la descarga. Por alguna extraña razón getProgress aunque esta dentro de la función setinterval, éste no se actualiza ya que se queda esperando a que termine el excel de crearse y descargarse para luego actualizarse. No entiendo la razón.
Necesito que tanto la funcion getProgress y la funcion download se ejecuten en paralelo y no uno despues de otro.

Alguna idea?
pd// ambas funciones retornan el valor correcto sin error.

Muchas Gracias.

Código PHP:
  function getProgress()
    {
         
        $.
ajax({
            
urlRouting.generate('getProgresoTotal') + '/' project '/' file,
            
cachefalse,
            
asynctrue,
            
success: function (data) { 
                $(
'#progreso').text(data);
            },
            
error: function () { 
                $(
'#progreso').text('error');
            }
        });
    }
    function 
download()
    {

        $(
'#modal-wizard').show();
         
         var 
url Routing.generate('download_data') + '/' project '/' file '/' 20 '/' "2km";
         var 
elemIF document.createElement("iframe");
         
elemIF.src url;
         
elemIF.style.display 'none';
         
document.body.appendChild(elemIF);
         
         var 
inter window.setInterval(function () { 
         
getProgress();
         if (
elemIF.contentWindow.document.readyState === "complete") {
         
window.clearInterval(inter);
         $(
'#modal-wizard').hide();
         
clearInterval(refreshIntervalId);
         }
         }, 
100); 
         
         
window.onbeforeunload null

 
 
    } 
  #2 (permalink)  
Antiguo 11/11/2016, 09:44
 
Fecha de Ingreso: enero-2016
Ubicación: Venezuela
Mensajes: 139
Antigüedad: 8 años, 10 meses
Puntos: 3
Respuesta: ajax y progreso

Hola, postea esto en el foro de AJAX no en el de PHP que no es el adecuado
  #3 (permalink)  
Antiguo 11/11/2016, 13:10
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 21 años
Puntos: 154
Respuesta: ajax y progreso

Y, ya que has abierto el tema aquí, cuando te lo resuelvan, copia el enlace del que abras en AJAX y marca este como resuelto por si alguien viene buscando solución para un problema similar al tuyo. Al fin y al cabo, aquí se trata de ayudarnos unos a otros y esta creo que es la manera.

Etiquetas: ajax, excel, progreso
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 16:42.