Bonjour,

Je cherche à créer une arborescence dynamiquement. Pour cela j'effectue une requête coté serveur qui me renvoie les données. Grâce à Json je peux utiliser mes données en javascript. Seulement je souhaite reproduire l'arborescence d'un système linux par exemple et mes enregistrements sont du genre "/home/.../...". je dois donc extraire /home à l'aide de exec.

Voici mon code:

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
var http = createRequestObject();
http.open('GET', './path.php', true);
http.onreadystatechange = (function ()
{
	if (http.readyState == 4)
	{
	        if (http.status == 200)
        	{
          		var personnes = validateJSON(http.responseText);
          		if (personnes !== false)
          		{         						
           			var nod = new Array("");
           			var reg = new RegExp("^/[A-Za-z0-9]*/","g"); 
           			var resultat = 0;
                                // Boucle i         						
            			for (var i in personnes)
            			{
            				var resultat = 0; 
              				var personne = personnes[i];
              				personne = reg.exec(personne.path);
                                        // Boucle j
              				for (var j in nod )
              				{
              				        if (personne == nod[j] )
              					{
              						resultat = 1;
              					}
              				}
              				if ( resultat == 0 )
              				{	
                                                // Ajout du noeud dans le treeview
					        var tempNode = new YAHOO.widget.TextNode(personne, node, false);
                                                // Ajout du dernier noeud dans le tableau
						nod.push(personne);
					}
            			}
          		}
          		else
          		{
            		document.getElementById('resultat').innerHTML = "JSON invalide";
          	}
        }
        else
        {
        	alert('Pas glop pas glop');
        }
 }
 });
Mon problème est le suivant. Au premier tour de la boucle i, personne = reg.exec(personne.path) prend la bonne valeur, le tour suivant ça prend la valeur NULL, le tour suivant la bonne valeur, le tour suivant la valeur NULL et ainsi de suite.

Voyez-vous d'où peux venir le problème ?

Merci d'avance,

_FaFa_