0 votes

Erreur dans le code

myTree.on('click',function(node){
                 if(node.isLeaf())
                  {
                    Ext.Msg.alert("You are in value ",nodeValue,"whose name is",nodeName);
                    alert("You are in value ",nodeValue,"whose name is",nodeName);
                  }
             });

myTree est un TreePanel. J'obtiens un arbre mais la fonction de clic ne fonctionne pas. Je suis très novice en matière d'extjs. Aidez-moi.

Merci d'avance

1voto

Chau Points 3034

Essayez plutôt ceci :

myTree.on('click',function(node){
    if(node.isLeaf())
    {
        Ext.MessageBox.show({
            msg: 'You are in text ' + node.text + ', whose id is ' + node.id,
            buttons: Ext.MessageBox.OK,
            icon: Ext.MessageBox.INFO
        });
    }
});

Je ne l'ai pas essayé, mais il ressemble beaucoup à ce que j'ai travaillé aujourd'hui :)

1voto

fake genius Points 128

Vous pouvez définir votre arbre comme :

var myTree = new Ext.tree.TreePanel({
    region: 'west',
    id: 'navTree',
    title: 'Items',
    width: 200,
    store: store,
    split: true,
    collapsible: true,
    listeners: {
        itemclick: {
            fn: function (view, record, item, index, event) {
                //the record is the data node that was clicked
                //the item is the html dom element in the tree that was clicked
                //index is the index of the node relative to its parent

                nodeId = record.data.id;
                htmlId = item.id;

                if (record.data.leaf) {
                    Ext.Msg.alert("Alert", "leaf");
                }
                else {
                    Ext.Msg.alert("Alert", "Not leaf");
                }
            }
        }
    }
})

0voto

Simeon Points 3750

On dirait que vous cherchez :

node.value
node.name

OR (je ne suis pas bon avec Ext)

node.nodeValue
node.nodeName

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X