Heim > Web-Frontend > js-Tutorial > So wählen Sie den zuletzt ausgewählten Knoten vor der standardmäßigen Aktualisierung nach ExtJS „refresh_extjs' aus

So wählen Sie den zuletzt ausgewählten Knoten vor der standardmäßigen Aktualisierung nach ExtJS „refresh_extjs' aus

WBOY
Freigeben: 2016-05-16 16:53:32
Original
999 Leute haben es durchsucht

Nach der Bearbeitung von Baumknoten ist es häufig erforderlich, einen Neuladevorgang durchzuführen, um den Baum zu aktualisieren. Viele Unternehmen müssen jedoch nach der Aktualisierung des Baums standardmäßig den zuletzt ausgewählten Knoten auswählen. Auf diese Weise müssen zunächst die Informationen des zuvor ausgewählten Knotens gespeichert und nach dem erneuten Laden erneut Schicht für Schicht durch die Knoteninformationen auf diesen Knoten erweitert werden.

Nach langem Abfragen habe ich endlich eine praktikable Lösung gefunden, die darin besteht, die Standortinformationen des Knotens über den Pfad des Knotens aufzuzeichnen und sie dann Schicht für Schicht, beginnend vom Wurzelknoten bis, zu erweitern der Pfad bis zum letzten Knoten.

Der fertige Code lautet wie folgt:
Die erste ist die Methode in der extjs3.x-Version:

Code kopieren Der Code lautet wie folgt:

//Den ausgewählten Knoten abrufen
var node = tree.getSelectionModel().getSelectedNode();
if(node ​​​​== null) { //Kein erneut ausgewählter Knoten. Baum laden
tree.getRootNode().reload();
} else { //Den Baum neu laden und standardmäßig den zuletzt ausgewählten Knoten auswählen
var path = node.getPath('id');
tree.getLoader().load(tree.getRootNode(),
function(treeNode) {
tree.expandPath(path, 'id', function(bSucess , oLastNode) {
tree.getSelectionModel ().select(oLastNode);
},
}

Anders als Extjs3.0 , Extjs4.2 ist wie folgt geschrieben

Code kopieren Der Code lautet wie folgt:
idPath = selNode.getPath("id");
tree. getStore().load({
node: tree.getRootNode(),
callback: function () {
tree.expandPath(idPath , 'id');
}
}) ;

Es ist zu beachten, dass der Knoten in den im Hintergrund zurückgegebenen JSON-Daten das id-Attribut enthalten muss Ich hatte dieses Attribut nicht, aber ich habe den Parameter in der getPath-Methode in ein anderes Attribut geändert. Fakten haben gezeigt, dass dies nicht effektiv ist, und schließlich wurde das ID-Attribut zu JSON hinzugefügt, um erfolgreich zu sein.
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage