2015-10-04 66 views
0

對於我的收件箱頁面,在這個頁面的用戶將能夠看到郵件,郵件將有2種類型的狀態(尚未開始,IN_PROGRESS)..有條件地呈現模板文本加粗

的dataTable其中用戶將能夠看到所有消息將有3列:

Data, title, actions 

消息的狀態來自服務。我的任務是,將BOLDED單詞「NEW」添加到用戶尚未打開的每條消息的標題。

打開後,狀態將更改爲「in_progress」,粗體字「NEW」應該消失。

或有想法insted 使用某種圖標。

我迄今所做的是:

<p:column headerText="#{msg.title}"> 
    <h:outputText value="#{task.properties.bpm_status=='Not Yet Started'?'New ':''}" /> 
    <h:outputText value="#{task.properties.bpm_description}" /> 
</p:column> 

問題是,我無法正確地添加<b></b>大膽,或添加圖標來代替。

我試圖添加<b></b> arround'新',但我在這種情況下得到錯誤。

回答

1

您可以使用<ui:fragment>有條件地呈現模板文本。

<ui:fragment rendered="#{task.properties.bpm_status eq 'Not Yet Started'}"> 
    <b>New</b> 
</ui:fragment> 

或者,應用樣式類。

<h:outputText value="New" styleClass="new" rendered="#{task.properties.bpm_status eq 'Not Yet Started'}" /> 
.new { 
    font-weight: bold; 
} 

使用內嵌樣式通過style屬性是實踐窮人它不是抽象的/可重複使用。

+0

爲什麼谷歌不能給我這個... :) 謝謝,工作得很好。 ! – iJava

+0

不客氣。 – BalusC

2

嘗試小時,使用下面的風格在"style="font-weight:bold"":標籤的outputText

<h:outputText value="#{task.properties.bpm_status=='Not Yet Started'?'New ':''}" style="font-weight:bold" /> 

我嘗試過了,它`爲我工作