2014-07-08 3 views
0

Désolé pour mon anglais. Je reçois le message de « trop récursion », et je pense est en ajax, voici le code:Jquery - Ajax "trop ​​de récursivité" erreurs showHide() et css.Fn

function procesarPdf(carpeta,idRevista,dirarchivo,paginaProcesar,nombreArchivo){   
      $.ajax({ 
       type:"POST", 
       url:'php/procesar_pdf.php', 
       data:{carpeta:carpeta,revista:idRevista,archivo:dirarchivo,paginaProcesar:paginaProcesar,nombreArchivo:nombreArchivo}, 
       async:false, 
       cache:false, 
       success: function(data) { 
        var datos = data;   
        if(datos.terminado==false){ 

         procesarPdf(datos.carpeta,datos.idRevista,datos.archivo,datos.paginaAProcesar,datos.nombreArchivo); 

        } else { 

         alert("Finish process"); 
         quitarEspera(); 
        } 
       } 
      }); 
     } 

J'utilise pdf pour traiter les images pour obtenir des images et des vignettes whit le fichier procesar_pdf.php. Quand j'appelle à nouveau la fonction pour continuer le processus et j'utilise la barre de progression de jquery pour voir la progression, mais quand la progression est dans 50% ou 56% ou 65%, le firebug me lance le message de "trop" beaucoup récursion "avec une autre erreur comment" css.Fn "ou" showHide (this, arguments) ".

Je ne connais pas l'erreur, s'il vous plaît dites-moi si connaître l'erreur.

+1

Définir 'async: true' –

+0

Très Merci !!! travail 100% – user3427006

Répondre

0

Vous appelez la fonction

procesarPdf(datos.carpeta,datos.idRevista,datos.archivo,datos.paginaAProcesar,datos.nombreArchivo); 

à partir de la fonction procesarPdf - trop récursion indiquerait que ce qui se passe à plusieurs reprises. Chaque fois qu'une fonction appelle une fonction, une nouvelle trame est ajoutée à la pile, et il y a une limite à la profondeur de la pile. Vous devriez poursuivre une stratégie alternative pour continuer le traitement, surtout si vous voulez le faire de manière synchrone.

0

Sans voir le reste de votre code, il semblerait que vous appeliez récursivement le procesarPdf() trop souvent dans ce que vous faites. Here est un article qui explique pourquoi un autre utilisateur rencontrait un problème similaire et obtenait la même erreur.