richfaces如何避免显示丰富的树图标? 我想过滤树,如果一个父亲填补他不会被showen,但他的孩子会,所以我需要改变从defult图标到无图标。richfaces如何避免显示丰富的树形图标?
<rich:treeNode type="regularNode"
icon="#{item.toShow?item.icon:'null'}" rendered="#{item.toShow}">
其中项目代表一个TreeNode
richfaces如何避免显示丰富的树图标? 我想过滤树,如果一个父亲填补他不会被showen,但他的孩子会,所以我需要改变从defult图标到无图标。richfaces如何避免显示丰富的树形图标?
<rich:treeNode type="regularNode"
icon="#{item.toShow?item.icon:'null'}" rendered="#{item.toShow}">
其中项目代表一个TreeNode
<rich:tree
和<rich:treeNode>
组件终于变成了一堆table
,tr
和td
节点HTML
页。
通过查看<rich:treeNode>
的component reference document,您可能会发现<rich:treeNode>
组件图标的预定义样式类名称为rich-tree-node-icon
。
是的,这是您应该覆盖以更改图标样式的样式类。
但是在您的情况下,您不需要隐藏所有<rich:treeNode>
的图标。所以应该做些棘手的事情。
这只是你可以做的一个技巧。
您知道,您可以使用这样的EL
来指定树节点的图标。所以首先要做。
<rich:treeNode icon="#{myNode.nodeIcon}"
其中myNode
表示treeNode
和getNodeIcon()
方法返回路径图像。对于需要隐藏其图标的treeNode
,此方法应返回空字符串。
好的,现在把这个javascript
后关闭</rich:tree>
标签。
<script>
var imgs = document.getElementsByTagName('img');
for(var i = 0; i < imgs.length; i++) {
var iconFound = imgs[i].parentNode.getAttribute('class').indexOf('rich-tree-node-icon') >= 0;
var imgSrc = imgs[i].getAttribute('src');
if(iconFound && (imgSrc == '')) {
imgs[i].style.display = 'none';
}
}
</script>
就是这样。
注意:这个脚本是做什么的?
它找到<img>
s,其父母的风格类包含rich-tree-node-icon
类。 然后如果src
为空,则隐藏那些<img>
标签。
您正在使用哪个版本的RichFaces? –