Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# remplir un tree en javascript

Envoyé par : thx1138

Date : 12/07/2007 15:11

Bonjour,

je voudrais remplir un <tree> en javascript. Mais je n'y arrive pas

mon <tree>

<tree id="liste" flex="1">
<treecols>
<treecol flex="1" label="Nom" />
<treecol flex="1" label="Prénom" />
<treecol flex="1" label="Ville1" />
<treecol flex="1" label="Tél1" />
</treecols>
<treechildren id="liste2" />
</tree>

mon code js (dans un fichier php en requete Ajax. Le tout est dans une boucle):

var tree1 = document.createElement('treeitem');
var tree2 = document.createElement('treerow');
tree2.setAttribute('value', ".$data['use_id'].");

var cell1 = document.createElement('treecell');
cell1.setAttribute('label', '".addslashes($data['use_nom'])."');
tree2.appendChild(cell1);

var cell2 = document.createElement('treecell');
cell1.setAttribute('label', '".addslashes($data['use_prenom'])."');
tree2.appendChild(cell2);

var cell3 = document.createElement('treecell');
cell1.setAttribute('label', '".addslashes($data['use_ville1'])."');
tree2.appendChild(cell3);

var cell4 = document.createElement('treecell');
cell1.setAttribute('label', '".addslashes($data['use_tel1b'])."');
tree2.appendChild(cell4);

tree1.appendChild(tree2);
GetE('liste2').appendChild(tree1);

merci de votre aide

# Re: remplir un tree en javascript

Envoyé par : Christophe Charron

Date : 12/07/2007 15:18

Bonjour, n'est-il pas mieux d'utiliser le xul namespace ?

const onlyxul   = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
 var treeItem = document.createElementNS(onlyxul,"treeitem");
 var treeRow  = document.createElementNS(onlyxul,"treerow");

# Re: remplir un tree en javascript

Envoyé par : thx1138

Date : 12/07/2007 16:55

merci,

En fait j'arrive à remplir les listbox à colonnes de cette manière. mais je sèche sur les tree. (je sais, il serait sans doute plus intelligent d'utiliser des fichiers rdf ;-))

Aurais-tu un exemple complet avec ta méthode ?

mon appli n'est pas dans le chrome.

merci

# Re: remplir un tree en javascript

Envoyé par : Raphael

Date : 13/07/2007 00:08

Et pourquoi pas un treeview ?

# Re: remplir un tree en javascript

Envoyé par : Christophe Charron

Date : 13/07/2007 00:17

Voila quelques bouts de bric et de broc

const onlyxul   = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
function pf_showcolumns(stream){
var fields = eval(stream);
var icon   = "graphics/field.bmp";
var tree   = document.getElementById("treeFields"); //  Attention, c'est l'identifiant de treeitem et c'est tout à fait bon et normal
var rows   = fields.rows;
var count=0;
var i=0;
var vl_c_nomcol="";
var vl_c_descol="";
 fa_vide_arbre("treeFields");
for(i in rows){
	node = fa_ajoute_ligne_dans_arbre(rows[i],icon);
	tree.appendChild(node);
}
}
function fa_ajoute_ligne_dans_arbre(fields,icon){
 var treeItem  = fa_crexul("treeitem"); 
 var treeRow   = fa_crexul("treerow");
 var count     = fields.length;
 var cells     = new Array(count);
 for(i=0;i<count;i++){
   cells[i] = document.createElementNS(onlyxul,"treecell");
   cells[i].setAttribute("label"," "+fields[i]);
 }
 if(icon!="") { cells[0].setAttribute("src",icon); }
 treeItem.setAttribute("container","true");
 for(i=0;i<count;i++) { treeRow.appendChild(cells[i]); }
 treeItem.appendChild(treeRow);
 return treeItem;
}
function fa_crexul(vv_quoi) { 
 return document.createElementNS(onlyxul,vv_quoi); 
}

Je ne suis pas dans le chrome non plus

# Re: remplir un tree en javascript

Envoyé par : thx1138

Date : 13/07/2007 01:28

ok

merci,

ton exemple est peu compliquer, mais j'ai chercher sur ton premier indice.

Ca fonctionne correctement, merci encore

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.