2012-06-14 60 views
2

我有一個要求,我必須突出顯示樹中新添加的節點以某種不同的顏色。我正在使用JSF2和Primefaces樹組件。我想是這樣的: -從管理bean的primefaces中突出顯示所選節點

在Managed Bean的,

getSelectedNode().setStyleClass("ui-helper-clearfix ui-tree-node-content ui-corner-all ui-tree-selectable-node ui-state-highlight"); 

在XHTML中,

<p:treeNode id="privilegesTreeNode" styleClass="#{privilegesTreeBean.selectedNode.styleClass}"> 
         <h:outputText value="#{node}" id="lblNode" /> 
        </p:treeNode> 

但這CSS是在所有nodes..not選擇的節點應用..轉念一想,可以在一定條件下灌裝的,我想這一點: -

<p:treeNode id="privilegesTreeNode" styleClass="#{privilegesTreeBean.selectedNode.styleClass ne '' ? privilegesTreeBean.selectedNode.styleClass : ''}"> 
         <h:outputText value="#{node}" id="lblNode" /> 
        </p:treeNode> 

誰能幫助我,我被困在此。

在此先感謝

回答

3

您對此條件的想法對我來說工作正常,

<h:outputText style="#{node.name == 'NEW NODE' ? 'background-color: yellow;' : 'background-color: none;'}" value="#{node}" /> 
+0

感謝您的回覆。 –

+0

@KBProdigy如果我必須做多重檢查,我該如何去做呢? 即在上面的答案中,如果節點可能以3種不同的顏色(紅色,黃色和綠色)顯示取決於「node.name」的值,那麼我該如何去做(可能調用JavaScript調用來執行檢查並突出顯示節點? – dirai