2010-12-14 5 views
1

Ich habe eine Website, die eine PDF-Datei herunterlädt, wenn der Benutzer auf eine Schaltfläche klickt. Das einzige Problem ist, dass es etwa 15 Sekunden dauert, um die Seite des PDF-Servers zu erstellen. In der Zwischenzeit fragt sich der Benutzer, warum es so langsam ist. Wie kann ich einen Fortschrittsbalken anzeigen, der angezeigt wird, während der Server die PDF-Datei spoolt und dann verschwindet, wenn der Download gestartet wurde (oder gestoppt wurde, was auch immer).So zeigen Sie eine Fortschrittsanzeige an, wenn ein Benutzer versucht, eine Datei herunterzuladen

** ** bearbeitet

Ich bin mit jquery und so weit, was ich tat ist auf Klick ich eine Klasse hinzugefügt und angewendet, um eine Hintergrundbild. Das Hintergrundbild ist ein animiertes Gif und erscheint. Ich hatte gehofft, dass, nachdem Sie klicken, um das pdf herunterzuladen, es den Browser zum pdf und dann zurück zu der Seite umleiten würde, nachdem es beginnt, herunterzuladen, dort, indem Sie die Seite erneuern und das Hintergrundbild entfernen. Keine Würfel auf diesem :(

Ich werde den uniqid Ansatz versuchen, wie unten beschrieben.

Ideen ??

+2

Geben Sie Ihren Code ein. –

+0

Wenn Sie wissen, wie lange es dauert, warum nicht einfach neben dem Knopf hinzufügen? – Pit

Antwort

0

Ihr serverseitigen Code sollte jedem PDF eine eindeutige ID geben. Wenn der Benutzer klickt auf Laden Sie ein PDF herunter, die eindeutige ID wird von AJAX abgerufen, der AJAX kann dann auf eine serverseitige Seite (progress.php? pdf-id = 4) zugreifen, die den Fortschritt zurückgibt jQuery UI hat eine Fortschrittsleiste, die bereits eingerichtet ist , so dass Sie es nicht selbst erstellen müssen

2

Sie könnten einfach einen Spinner hinzufügen (um dem Benutzer zu zeigen, dass etwas passiert) und dann schreiben, dass es ungefähr 15 dauert sec um das PDF zu erstellen. Das sollte für die meisten Benutzer ausreichen.

+0

Ich stimme zu, dass dies der beste Weg ist, da der Prozess des Herunterladens und der Protokollinteraktion, der von Acrobat/Adobe für den Zugriff auf die Datei in ihrem Format angegeben wird, nicht gestört wird – Developer

Verwandte Themen