gpt4 book ai didi

javascript - Extjs:树,创建树后选择节点

转载 作者:数据小太阳 更新时间:2023-10-29 05:53:30 24 4
gpt4 key购买 nike

我有一个简单的 TreePanel。我想在加载时选择一个特定的节点。节点来自远程文件 (json)。

树正在按预期加载。但是,未选择该节点。 Firebug 将节点显示为未定义。这可能是因为异步属性。但是,我无法以其他方式配置它,也无法指定要选择的节点。

欢迎提出任何建议,谢谢。

    LeftMenuTree = new Ext.tree.TreePanel({
renderTo: 'TreeMenu',
collapsible: false,
height: 450,
border: false,
userArrows: true,
animate: true,
autoScroll: true,
id: 'testtest',
dataUrl: fileName,
root: {
nodeType: 'async',
iconCls:'home-icon',
expanded:true,
text: rootText
},
listeners: {
"click": {
fn: onPoseClick,
scope: this
}
},
"afterrender": {
fn: setNode,
scope: this
}
});
function setNode(){
alert (SelectedNode);
if (SelectedNode == "Orders"){
var treepanel = Ext.getCmp('testtest');
var node = treepanel.getNodeById("PendingItems");
node.select();
}
}

最佳答案

我在 TreeGrid 中使用这段代码来选择一个节点

_I.treeGrid.getSelectionModel().select(_I.treeGrid.getRootNode());

我还没有在 TreePanel 中尝试过这个,但是由于 TreeGrid 是基于它的,所以我假设它是可行的。在完成 XHR 请求后,我使用加载器的加载事件来插入类似的代码,所以请尝试像这样编写您的 setNode 函数:

var loader = LeftMenuTree.getLoader();
loader.on("load", setNode);
function setNode(){
alert (SelectedNode);
if (SelectedNode == "Orders"){
var treepanel = Ext.getCmp('testtest');
treepanel.getSelectionModel().select(treepanel.getNodeById("PendingItems"));
}
}

关于javascript - Extjs:树,创建树后选择节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2623042/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com