Question

J'utilise la bibliothèque Ext JS pour créer ma demande. J'ai un panneau d'arbre qui a des nœuds d'arbres et les enfants nœuds d'arbres. Ces nœuds d'arbres ont leafs que je voudrais être en mesure d'accéder. Je cherchais depuis un certain temps, mais ne peut pas trouver une fonction de propriété pour accéder aux leafs: (

Une partie du code est ici:

var i;
var j = 0;
var selectedLayers = new Array();
                                while(layerRoot.lastChild.hasChildNodes()){
                                    alert(layerRoot.lastChild.firstChild);
for(i = 0; i < layerRoot.lastChild.firstChild.childNodes.length; i++){
                                        if(layerRoot.lastChild.firstChild.childNodes[i].isSelected()){
                                            selectedLayers[j] = layerRoot.lastChild.firstChild.childNodes[i].attributes.text;
                                            alert(selectedLayers[j]);
j++;
} 
}

                                    layerRoot.lastChild.removeChild(layerRoot.lastChild.firstChild);
}
layerRoot.removeChild(layerRoot.lastChild);

J'ai essayé layerRoot.lastChild.firstChild.childNodes, mais cela ne suffit pas puisque les enfants de layerRoot.lastChild.firstChild sont leafs :(. Votre temps et les commentaires sont très appréciés.

elshae

Était-ce utile?

La solution

Je viens de commencer à jouer avec TreePanel aussi, je pense que vous devez écrire votre fonction pour parcourir l'arborescence et tester si les noeuds sont des feuilles en utilisant la propriété leaf. Si vous avez une fonction particulière que vous voulez exécuter sur les feuilles, vous pouvez utiliser cascade() pour parcourir automatiquement l'arbre pour vous, les tests de la propriété leaf le long du chemin et l'exécution de votre code.

Autres conseils

Vous devriez vérifier TreePanel, je pense que TreeGrid pourrait être dépréciée dans la dernière version ext (3.3). Il a une tonne de fonctions get / set / traversal, vérifier dans l'API ici: http://dev.sencha.com/deploy/dev/docs/?class=Ext.tree.TreePanel

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top