Bonjour,

Je tente de réaliser un menu de style accordion géré dynamiquement avec dans chaque onglet un treePanel.

Ce qui marche: L 'affichage du menu accordion dynamique, un treepanel.


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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
 
<script type="text/javascript">
 
<?php 
                $db = new Database();
                $nb_rows = $db->select("SELECT * FROM users");
                if($nb_rows>0)
                        {
                                while($row = $db->next_row())
                                {
                                        echo "var item".$row["id"]." =  new Ext.Panel({";
                                        echo "title: '".$row["login"]."',";
                                        echo "html: '<div id='tree' ><div>',"; // ICI 
                                        echo "cls:''});";
                                        
                                }
                        }
                ?>
 
var accordion = new Ext.Panel({
                region:'west',
                title: 'abylsen',
                margins:'5 0 5 5',
                split:true,
                width: 210,
                layout:'accordion',
                items: [<?php 
                                $nb_rows = $db->select("SELECT * FROM users");
                                if($nb_rows>0)
                                        {
                                                while($row = $db->next_row())
                                                {
                                                        echo "item".$row["id"].",";
                                                }
                                        }
                ?>]
            });
Ext.onReady(function() {
 
var Tree = Ext.tree;
 
var tree = new Tree.TreePanel({
        useArrows: true,
        autoScroll: true,
        animate: true,
        enableDD: true,
        containerScroll: true,
        border: false,
        // auto create TreeLoader
        dataUrl: '../action/tree_action.php?action=getFolderList',
 
       root: {
            nodeType: 'async',
            text: 'ABYLSEN',
            draggable: true,
            id: 'src'
        }
    });
 
    // render the tree
    tree.render('tree');
 
var viewport = new Ext.Viewport({
                layout:'border',
                items:[ 
                       new Ext.BoxComponent({
                        region:'north',
                    	el:'Header',
                        height: 75
                        }),
                        accordion,
                        {
                    region: 'center', 
                    title: 'aaa', 
                    layout: 'border',
          			items:[{
              			layout: 'fit', 
	                    region:'center',
	                    border: 'false',
	                    minWidth: '975',
                    	items:[]
                }]
            },]});
      });
    </script>

Mon probleme (au niveau du commentaire "ICI")

Si j'enleve la balise div avec l'ancre pour inserer mon arbre ca fonctionne tres bien (mais je n'ai pas d'arbre dans les onglets )

Si je met la balise firebug me dit que j'ai un probleme de }
Bizarre non? Quelqu'un a une piste? merci. ++