gpt4 book ai didi

javascript - 解析 dijit.tree 中的节点

转载 作者:行者123 更新时间:2023-12-03 08:20:32 25 4
gpt4 key购买 nike

我正在努力使用 dijit.Tree,但在 dojo 文档中找不到我需要的内容...

我想根据某些条件更改树中一些元素的样式。

我能够通过 for 循环和 if 计算的组合来识别元素:

itemList = this.tree.model.store._arrayOfAllItems;
for (var index in itemList) {
item = itemList[index];
if (item.<property> == ...) {
...
//This is where I want to change the style
...
}
...
}

但是,我无法获取节点 id 来调用 dojo.addClass(nodeId, newClass)。

我是否使用 model.store._arrayOfAllItems 解析正确的列表?有没有办法通过节点列表进行解析,并且仍然访问数据属性?

非常感谢您的帮助!

<小时/>

编辑于2015年11月23日

根据理查德的评论,我得到了我正在寻找的结果。我添加了一个处理程序,将树的 onOpen 事件连接到一个获取打开节点映射(来自 tree._itemNodesMap)的方法,然后通过存储获取。对于商店中的每个商品,如果正在验证的商品的 id 在开放节点映射中具有关联的节点,则它会调整 css。然后它递归地寻找子代。

感谢理查德的帮助!

最佳答案

如果您有树内节点的 id,则可以使用树具有的 getNodesByItem 函数。

尽管如果您的树是动态的并且内容可以更改,但我建议编写一个函数,该函数不仅可以添加到您的存储中,还可以添加到树中形成的节点的类中。

关于javascript - 解析 dijit.tree 中的节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33767877/

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