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? –