2010-12-15 102 views
0

Je besoin de ce genre d'événement dans le but suivant:Quel événement (javascript/jQuery) se déclenche lorsqu'une requête HTTP est terminée?

1 considérant un html-forme standard (pas ajax) 2. utilisateur soumet le formulaire - attend un pdf 3.1 demande prend un certain temps (> 2min) 3.2 l'utilisateur devrait voir un spinner os, alors que la demande est en cours de traitement 4. spinner devrait disparaître, lorsque le dialogue de téléchargement apparaît (besoin d'événement ici)

+0

Où voudriez-vous que le compteur apparaisse si la page entière est en train de charger? Dans un iframe/cadre? –

+0

comme image sur le centre de la page – threadstarter

Répondre

0

S'il n'y a pas d'AJAX impliqué, $(document).ready(...) ... depuis que la page est rechargée complètement (c'est le comportement standard du navigateur).

En outre, si la destination est un PDF, il n'y aura pas JavaScript de l'autre côté de toute façon :)

+0

donc c'est impossible? – threadstarter

+1

@threadstarter - si vous êtes la destination après le POST est un PDF ... oui, il n'y a pas de JavaScript impliqué. Le comportement standard du navigateur est de quitter la page précédente, ce qui termine * toutes * les opérations JavaScript ... si c'était AJAX alors il y a certainement des options, mais il n'y a rien pour reporter le comportement d'une page à l'autre sauf les cookies ... parle d'un flash entre. –

0

Vous devriez faire une demande de paiement ajax pour cela, sinon ce n'est pas vraiment va travailler. Vous pourriez envisager de mettre la génération dans un travail d'arrière-plan et envoyer un courriel le ppl une fois qu'une demande est terminée. Gardez à l'esprit qu'une requête longue prendra dans la plupart des cas un délai d'expiration.