gpt4 book ai didi

java - richfaces如何避免显示丰富 TreeMap 标?

转载 作者:行者123 更新时间:2023-12-02 08:07:48 27 4
gpt4 key购买 nike

richfaces如何避免显示丰富 TreeMap 标?我想过滤树,如果一个父亲被填充,他将不会显示,但他的 child 会显示,所以我需要从默认图标更改为无图标。

<rich:treeNode type="regularNode"
icon="#{item.toShow?item.icon:'null'}" rendered="#{item.toShow}">

其中项目代表树节点

最佳答案

<rich:tree<rich:treeNode>组件最终变成了一堆table , trtd HTML 中的节点页。
通过查看component reference document<rich:treeNode>你可能会发现<rich:treeNode>图标的预定义样式类名组件是 rich-tree-node-icon

是的,这是您应该覆盖以更改图标样式的样式类。
但是,在您的情况下,您不需要隐藏所有 <rich:treeNode> 的图标。 s。所以应该做一些棘手的事情。
这只是您可以做的一个技巧。

您知道可以使用 EL 指定树节点的图标。像这样。所以首先要这样做。

<rich:treeNode icon="#{myNode.nodeIcon}"

哪里myNode代表 treeNodegetNodeIcon()方法返回图像的路径。对于treeNode如果您需要隐藏其图标,此方法应返回一个空字符串。
好的,现在把这个 javascript 结束结束 </rich:tree>标签。

<script>
var imgs = document.getElementsByTagName('img');
for(var i = 0; i &lt; imgs.length; i++) {
var iconFound = imgs[i].parentNode.getAttribute('class').indexOf('rich-tree-node-icon') >= 0;
var imgSrc = imgs[i].getAttribute('src');
if(iconFound &amp;&amp; (imgSrc == '')) {
imgs[i].style.display = 'none';
}
}
</script>

就是这样。
注意:这个脚本有什么作用?
它找到<img>其父级样式类包含 rich-tree-node-icon 的位置类(class)。然后隐藏那些<img>标签如果 src为空。

关于java - richfaces如何避免显示丰富 TreeMap 标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6562001/

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