jQuery-file-upload, wie man die Anzahl der Dateien in der Warteschlange und hochgeladen
In jQuery file uploader (http://blueimp.github.io/jQuery-File-Upload/), wenn ich starten Sie das hochladen einige Dateien, die ich zeigen möchte, eine Zeile mit dem Inhalt "Hochgeladen x von y". x ist die Anzahl der Dateien, die erfolgreich hochgeladen, und y ist die Anzahl der Dateien hochladen und in die Warteschlange eingereiht. Wie bekomme ich diese beiden zahlen? Ich habe mir bei den Optionen, aber ich habe nichts gefunden, die ich verwenden kann.
Wenn die Seite aktualisiert wird, die während oder nach dem upload fertig ist, kann ich auch zeigen wollen, eine Nachricht als "x-Dateien hochgeladen". Also, wie bekomme ich diese Nummer? Es wäre auch gut zu wissen, wie zu zählen-Anzahl der Dateien fehlgeschlagen beim hochladen.
Vielen Dank für Ihre Hilfe.
- ganz einfach mit $('#table_fileupload tr').Länge;
Du musst angemeldet sein, um einen Kommentar abzugeben.
Basierend auf API-Dokumentation können Sie
"Callback Options"
zu binden-Ereignis während dem hochladen.Den Sie suchen, ist :
Und auch :
Nur eine variable zu Inkrementieren und verwalten Ihrer Anzeige.
Aufpassen, nicht auch forgotting Fehlerbehandlung (mit Prozess-fail-event), wenn ein Fehler Auftritt, zum anzeigen der richtigen Schnittstelle.
Um zu wissen, wie viele Dateien, die Sie senden, benutzen Sie einfach
add events
zu verfolgen Ihre variable.Es gibt einige Funktion, die Sie anrufen können, um diese Werte würde ich aber nicht empfehlen da die Veranstaltung verbindlich errichtet wurde, die speziell zu halten Ihre code synchronisiert, zu jeder Zeit.
Über die Seite aktualisieren
Müssen Sie eine
sessionStorage
zu halten Werte beim aktualisieren einer Seite. Der einfachste Weg ist, aktualisieren Sie diesen Wert immer, wenn sich Ihre number_of_files ändern. (siehe Dokument auf MDN)Brauchen Sie nur auf die Last (oder der Initialisierung des upload-plugin), um diesen Wert und den ursprünglichen Wert der variable ... diese Weise können Sie verfolgen, von der vorherigen Sitzung.
Vorschlag von code
Müssen Sie nur alle groß - /Kleinschreibung im code, wie Löschung, änderung und andere ... um sicherzustellen, dass Ihr Wert ist immer up to date. Aber jQuery-File-Upload wird nicht angenommen zu werden, in der Sie Ihre Ansicht, als Teil des MVC-Musters, ist es nur eine Sache zu tun, die wird hochladen und geben Ihnen alle Werkzeuge, um mit zu arbeiten, dass
jQuery('#fileupload').fileupload('option').getNumberOfFiles();
undjQuery("#fileupload .template-download:not('.ui-state-error')").length
aber Sie funktionieren nicht richtig. Jede Hilfe auf das bitte?sessionStorage
undlocalStorage
zu halten, diese Informationen beim regenerieren. Es sei denn, Sie implementieren zwei-Wege-Datenbindung, es wird schwer sein, halten Sie Ihr HTML mit der richtigen Wert, wenn Sie nur getNumberOfFiles().Der Summe können angezeigt werden, mit Warteschlange.Länge in der Standard-blueimp front-end-Struktur: (Winkel kann nur tun, {{queue.Länge}} im html-Code).
Verfolgen uploads komplett mit den Rückrufen in der Dokumentation: 1 auf uploaddone, etc.
Wenn Sie brauchen, um track total hochgeladen zwischen Seite lädt, die Sie benötigen, um zu speichern, dass Sie in Ihrem app-back-end. Winkel können dies tun, in einem service.