|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : octobre 2009 Messages : 16 ![]() |
Bonjour,
Dans un script d'importation de photos, je cherche à actualiser une progressbar (Jquery UI) en suivant l'avancement de requêtes Ajax. Mon problème : La progressbar, qui est censée s'afficher avant le lancement des requêtes ajax ne le fait qu'après. Je n'ai donc mon retour utilisateur visuel qu'à la fin de l'execution de ma boucle While... (La console me montre que ces requêtes s'éxecutent bien, dans l'ordre) J'ai essayé pas mal de chose, notamment d'executer la suite des instructions dans le callback de l'affichage... sans succès... J'ai pensé à utiliser live() ou bind(), mais je ne sais comment le tester... Quelqu'un aurait une piste ? Voici mon code jquery : Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre éclairé
![]() |
Bonjour,
Pourquoi n'as-tu pas mis le bloc "if (ajax_reussi==true){ ..." dans la fonction anonyme appelée en cas de succès de la requète ("success : function(resultat){ ...") ? Essaye pour voir |
|
|
00
|
|
|
#3 | |
|
Invité régulier
![]() Inscription : octobre 2009 Messages : 16 ![]() |
Citation:
J'ai essayé d'afficher dès le départ ma progressbar, et elle ne s'actualise pas au fur et à mesure. Idem pour le petit texte en dessous dans #text_result qui ne s'actualise pas : "Importation en cours : x/y". Donc je crois qu'il y a 2 problème à mon script : - la mise à jour de l'affichage à la fin du while - l'avancement progressif de la progressbar |
|
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() |
Faudrait que tu cherches un autre algorithme en utilisant le mode asynchrone, car le mode synchrone bloque temporairement le naviguateur de l'utilisateur tant que la requête n'est pas terminée, par conséquent l'avancement progressif de la progressbar n'est pas visible.
Tu dois alors remplacer ton while par une autre méthode. Essaye de construire une fonction permettant de récupérer le résultat de la requète, actualise la progressbar, puis exécute la prochaine requète s'il reste des photos. |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : octobre 2009 Messages : 16 ![]() |
Je sais que la requête Ajax bloque le navigateur, mais ma tentative d'actualisation de la progressbar ne fait pas parti de l'ajax. J'ai justement fait une boucle (while ou for) pour pouvoir executer des instructions entre les différentes requête Ajax. Le fichier /traitement.php importe une seule photo à chaque passage.
Dans la console, j'ai bien le retour que ça marche bien... mais impossible à afficher sur la page html. Bref, je sèche... |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com