Używam XMLHttpRequest (z jQuery), aby uzyskać postęp przesyłania wielu plików. Dodając detektor zdarzeń "postępu" do obiektu XMLHttpRequest, mogę uzyskać event.loaded
i . Te zmienne dają mi załadowane i całkowite bajty wszystkich połączonych plików.Pobierz postęp poszczególnych plików za pomocą XMLHttpRequest
Co chciałbym zrobić, to uzyskać postęp każdego pojedynczego pliku, ale z tego, co widzę, że informacje nie są dostępne z XMLHttpRequest. Czy to prawda?
Nie sądzę, jest to nawet konieczne, ale tutaj jest mój kod:
var xhr = $.ajaxSettings.xhr();
if (xhr.upload) {
xhr.upload.addEventListener('progress', function(event) {
var percent = 0;
var position = event.loaded || event.position;
var total = event.total;
if (event.lengthComputable) {
percent = Math.ceil(position/total * 100);
}
updateProgressBar(percent);
}, false);
}
return xhr;
Jeśli mogę to osiągnąć z XMLHttpRequest, że byłoby świetnie. Wszelkie informacje na ten temat będą mile widziane.
Spójrz na to: [Jak zdobyć postępu od XMLHttpRequest] (http://stackoverflow.com/questions/76976/how-to-get-progress-from-xmlhttprequest) – Joe
Dzięki, ale mój skrypt już to robi. Mam na myśli to, że chcę postępu dla każdego pliku, a nie wszystkich plików jako grupy. – Gavin
Następnie wysyłaj tylko jeden plik na żądanie. –