Bonjour,
Je réalise actuellement un composant représentant une arborescence avec jsTree.
J'ai besoin des données suivantes :
- le libellé du noeud ;
- son identifiant ;
- son libellé "complet" (de la forme "libellé noeud racine/libellé noeud 1/libellé noeud 2/...".
Si je n'ai aucun souci pour avoir les deux premiers, je n'arrive pas avoir le suivant (sans le recalculer).
J'utilise pour l'instant le format XML décrit dans la doc. Y a-t-il moyen en standard d'ajouter des données supplémentaires ?
(j'ai tenté le span caché dans le CDATA mais l'injection de code ne passe pas trop)
Code XML : 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 <root> <!-- Racine --> <item id="root1" state="closed"> <content> <name><![CDATA[root1]]></name> </content> </item> <!-- root1/AA --> <item id="1000" parent_id="root1"> <content> <name><![CDATA[AA]]></name> </content> </item> <!-- root1/AB --> <item id="1001" parent_id="root1"> <content> <name><![CDATA[AB]]></name> </content> </item> </root>
Et le script d'initialisation du composant :
Merci !
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 <script type="text/javascript"> // Déclencheur au clic sur un noeud. $(function () { $("#esstree").bind("select_node.jstree", function (e, data) { var node = data.rslt.obj; // Ouverture des parents. node.parents(".jstree-closed").each(function () { data.inst.open_node(this, false, true); }); // Toggle du noeud courant. data.inst.toggle_node(node); $("#selectedess").html(node.attr("id")); }); // Initialisation du plugin. $("#esstree").jstree({ plugins : [ "xml_data", "ui", "themes" ], xml_data : { ajax : { url : "./data.xml", } }, ui : { select_multiple_modifier : false, initially_select : [ "1001" ], }, themes : { icons: false, dots : true, } }); }); </script>
Alban
Partager