bonjour,
je veux récupérer les nœuds cochés d'une fancytree et les stocker dans un tableau en javascript
merci
Version imprimable
bonjour,
je veux récupérer les nœuds cochés d'une fancytree et les stocker dans un tableau en javascript
merci
Bonjour,
ils ont pourtant un exemple très clair qui ressemble à ce que tu cherches... enfin il me semble.
Example: Selection and Checkboxes
merci pour ta réponse ,
moi ce que je veux cé récupérer le tableau avec tous les éléments sélectionnés et l'envoyer comme parametre à une autre fenetre ,en appuyant sur
le bouton imprimer
Code:
1
2 <a style="color:#000;" type="button action3" class="button action1" name="Btn_Add" id="Btn_Add">Imprimer</a>
Code:
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
57
58
59
60
61
62
63
64
65 <script> $(document).ready(function() { $("#Btn_Add").click(function() { if(selKeys =='') { alert('selection vide') } else{ $.post("faisceau.php", { Key: $("#selKeys ").val() },function(data){ alert(data); //$("#form")[0].reset(); //window.location.assign("index.php?page=Page_Acceuil"); }); } }); $("#tree3").fancytree({ checkbox: true, selectMode: 3, source: SOURCE, lazyLoad: function(event, ctx) { ctx.result = {url: "ajax-sub2.json", debugDelay: 1000}; }, loadChildren: function(event, ctx) { ctx.node.fixSelection3AfterClick(); }, select: function(event, data) { // Get a list of all selected nodes, and convert to a key array: var selKeys = $.map(data.tree.getSelectedNodes(), function(node){ return node.key; }); $("#echoSelection3").text(selKeys.join(", ")); // Get a list of all selected TOP nodes var selRootNodes = data.tree.getSelectedNodes(true); // ... and convert to a key array: var selRootKeys = $.map(selRootNodes, function(node){ return node.key; }); $("#echoSelectionRootKeys3").text(selRootKeys.join(", ")); $("#echoSelectionRoots3").text(selRootNodes.join(", ")); }, dblclick: function(event, data) { data.node.toggleSelected(); }, keydown: function(event, data) { if( event.which === 32 ) { data.node.toggleSelected(); return false; } }, // The following options are only required, if we have more than one tree on one page: // initId: "SOURCE", cookieId: "fancytree-Cb3", idPrefix: "fancytree-Cb3-" }); </script>
tu le récupères bien dans ton select:Citation:
moi ce que je veux cé récupérer le tableau
le plus simple est de mettre ton tableau en variable en globale.Code:
1
2
3
4
5
6 // Get a list of all selected TOP nodes var selRootNodes = data.tree.getSelectedNodes(true); // ... and convert to a key array: var selRootKeys = $.map(selRootNodes, function(node){ return node.key; });
bonjour ,
j'ai déclaré mon tableau comme variable globale comme tu me l'as dit :
pour envoyer mon tableau avec Post j'ai écrit ce bout de code , je crois ne marche pas car je ne récupère rien dans ma page faisceau.php :Code:
1
2
3 var tree = $("#tree").fancytree("getTree"); var selRootNodes= tree.getSelectedNodes(true);
ma page faisceau.phpCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <script> $(document).ready(function() { $("#Btn_Add").click(function() { $.post("faisceau.php", { Key: $("#selRootNodes").val() },function(data){ alert(data); //$("#form")[0].reset(); //window.location.assign("index.php?page=Page_Acceuil"); }); });
mon echo me retourne toujours 0 même si mon tableau est pleinCode:
1
2
3
4 <?php $vNodechecked = $_POST["Key"]; echo sizeof($vNodechecked); ?>
Salut,
il faudrait déterminer si les données ne sont pas envoyées ou si elles ne sont pas reçues. Ouvre le panneau F12 et va sur l’onglet réseau, inspecte ta requête pour voir si les données y sont présentes.
Et dans ton code PHP, ajoute var_dump($_POST).
Regarde ce que tu manipules comme données et comment tu les utilises.
D'un coté tu fais var selRootNodes= tree.getSelectedNodes(true) et plus loin $("#selRootNodes").val(), pas sûr que cela puisse marcher un jour !