Bonjour,

Je suis en train de travailler sur un exercice d'upload de fichier vous trouverez le code et son fonctionnement ici.

Mon problème actuel est que j'ai une liste de fichier que je veux uploader avec formData et xhr ceux qui fonctionne bien quand j'envoie tous les fichiers en même temps.
Mon problème vient du faite que dans ma boucle each j'envoie le premier fichier sans aucun problème mais je ne trouve pas le moyen de lancer le second a la fin du première envoie.

Je vous met le js ici en plus :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
$(function(){
 
	var list     = [];
	var fileList;
	$("#img").change(function(e){
 
		var file  = e.target.files;
 
		if (list.length === 0){
 
			for (var i = 0, f; f = file[i]; i++){
				list.push(f.name);
				fileList = e.target.files;
				$("#content_list").append("<div class=\"content_head_title title_name\">"+f.name+"</div><div class=\"content_head_title title_desc\"><input type=\"text\" id=\"desc\" name=\"desc\" /></div><div class=\"content_head_title title_price\"><input type=\"text\" id=\"price\" name=\"price\" /></div><div class=\"content_head_title title_status\" id=\"status"+i+"\"></div>");
 
			}
 
		}else{
			for (var i = 0, f; f = file[i]; i++){
				if (jQuery.inArray(f.name, list) == -1){
					list.push(f.name);
					fileList = e.target.files;
					$("#content_list").append("<div class=\"content_head_title title_name\">"+f.name+"</div><div class=\"content_head_title title_desc\"><input type=\"text\" id=\"desc\" name=\"desc\" /></div><div class=\"content_head_title title_price\"><input type=\"text\" id=\"price\" name=\"price\" /></div><div class=\"content_head_title title_status\" id=\"status"+i+"\"></div>");		
				}
			}
		}
	});
 
	$("#send").on("click", function(e){
		e.preventDefault();
		var elem;
		var loadStop = false;
		var data = new FormData();
		var xhr = new XMLHttpRequest();
 
		$.each(fileList, function(i, v) {
			elem = $(this);
			$("#status"+i).append("<img class=\"loader\" src=\"modules/image/media/icons/loader.png\"/>");
			data.append("file"+[i],fileList[i]);
			xhr.onreadystatechange = function() {
 				if (xhr.readyState == 4) {
        			if (xhr.responseText == "0"){
        				$("#status"+i).empty().append("<img class=\"loader\" src=\"modules/image/media/icons/valid.png\"/>");
        				i++;
        				loadStop = true;
        			}else loadStop = false;
    			}
			}
			xhr.open('POST', "modules/image/coreAdmin/traitimg.php", true);
			xhr.send(data);
			return loadStop;
		});
	});
 
 
});
Je sais que "return false" m'arrete la boucle ... et "true" la continue; et c'est la ou je bloque pourriez vous me guidez vers la bonne direction ?
merci d'avance

*********EDIT*********

Bon j'ai regarder du coter de setTimeout mais je ne vois pas comment m'en servir dans ce cas :/