IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] Téléchargement de plusieurs fichiers parallèlement avec AJAX


Sujet :

AJAX

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2010
    Messages : 16
    Points : 6
    Points
    6
    Par défaut [AJAX] Téléchargement de plusieurs fichiers parallèlement avec AJAX
    Bonjour,
    j'aurais besoin d'un peu d'aide pour trouver une solution à mon problème:
    Sur ma page, j'ai une liste de liens menant à des fichiers. Sauf que j'utilise AJAX pour faire générer du côté serveur ces fichiers là au moment où l'on clique sur un de ces liens. A la fin du traitement (qui prend au moins une vingtaine de secondes), l'URL m'est renvoyée et j'utilise ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.location.href=xhr.responseText;
    pour pouvoir lancer le téléchargement du fichier. Jusque là ca marche très bien.

    Mon soucis maintenant est de permettre à l'utilisateur de cliquer sur plusieurs liens différents sans attendre la fin du chargement du 1er fichier (c.a.d avant que le Téléchargement du 1er fichier ne commence) et qu'au final tous les fichiers se téléchargent correctement. Normalement AJAX gère bien le fait d'empiler les requêtes comme ca mais cette ligne de code que j'ai mise précédemment fait planter les téléchargements suivants car ils ne renvoient alors aucune réponse...

    Si je la remplace par un simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert(xhr.responseText);
    alors là ca marche normalement et on verra s'afficher les différents liens vers les fichiers à télécharger (mais ca ne télécharge pas, bien évidemment ^^). Donc voilà, est ce que vous voyez un moyen pour remplacer ma ligne de code?

    Voici une version épurée du code qui ne contient que l'essentiel concernant le problème:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function getFile(file){
    	var xhr = new XMLHttpRequest();
    	xhr.onreadystatechange = function() {
    		if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0))
    			document.location.href = xhr.responseText; // Ligne qui pose problème à priori
    	}
    	xhr.open("GET",file,true);
    	xhr.setRequestHeader("Cache-Control","no-cache");
    	xhr.send(null);
    }
    Merci de votre aide

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Utilise window.open() au lieu de location.href

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2010
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Merci beaucoup c'est exactement ca

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Envoi de plusieurs variables POST avec Ajax
    Par feelwatt dans le forum AJAX
    Réponses: 2
    Dernier message: 01/09/2015, 11h36
  2. [AJAX] Récupérer un tableau à plusieurs dimension reçu avec ajax (json)
    Par krizentherm dans le forum jQuery
    Réponses: 4
    Dernier message: 29/07/2013, 17h15
  3. [1.x] upload de fichiers multiple avec AJAX ou jQuery
    Par CobraSA dans le forum Symfony
    Réponses: 6
    Dernier message: 21/01/2011, 15h52
  4. Envoi de plusieurs variables inconnues avec ajax
    Par yann18 dans le forum jQuery
    Réponses: 2
    Dernier message: 27/05/2010, 15h44
  5. [AJAX] Récupération d'un fichier JSON avec javaScript
    Par guerin dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 26/11/2006, 19h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo