J'essaie la nouvelle fonctionnalité XMLHTTPRequestUpload pour télécharger des fichiers sur un script php, cela fonctionne généralement bien, le téléchargement commence, je reçois la réponse de finition etc - mais la progression ne marche pas ne semble pas fonctionner.XHR Upload Progression est 100% depuis le début
En regardant que la valeur event.loaded - Dans firefox je semble obtenir une valeur aléatoire entre 0 et la taille du fichier; dans Chrome (où je travaille principalement) j'obtiens la taille totale de dossier, même si le readystate n'a pas atteint '4' et la fenêtre d'outils de développement montre toujours le dossier à charger?
Des idées?
Heres mon code:
var xhr = new XMLHttpRequest()
xhr.upload.addEventListener('progress', function(event) {
if (event.lengthComputable) {
$('ajaxFeedbackDiv').innerHTML = event.loaded + '/' + event.total;
}
}, false);
xhr.onreadystatechange = function(event) {
if (event.target.readyState == 4) {
updateFileList();
}
};
xhr.open("POST", "_code/upload.php");
xhr.setRequestHeader("Cache-Control", "no-cache");
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.setRequestHeader("X-File-Size", file.size);
xhr.setRequestHeader("X-File-Type", file.type);
xhr.setRequestHeader("Content-Type", "multipart/form-data");
xhr(file);
Un grand merci
Ben
Avez-vous trouvé une solution ou une solution de contournement au problème? Je ressens actuellement la même chose, mais cela semble dépendre de votre connexion réseau. Il fonctionne comme prévu dans un endroit, et saute à 100% de l'autre. – unclenorton
Je rencontre le même problème. Fait intéressant, il semble que cela ne se produise que lorsque je cours sur localhost - quand je déploie sur nos serveurs dev ou prod, la valeur chargée revient comme on pouvait s'y attendre. – brettjonesdev