2014-01-10 59 views
5

嗨,大家好,我想顯示沒有按鈕的圖標,但它不起作用。我收到以下消息:沒有找到Mime-Type。 這兩個圖標是Primefaces的默認圖標。JSF顯示圖標無按鈕

我使用JSF 2.1和primefaces 3.5

<h:graphicImage rendered="#{!task.IS_SEEN}" name="ui-icon-mail-closed"/> 
<h:graphicImage rendered="#{task.IS_SEEN}" name="ui-icon-mail-closed"/> 

如果我使用的按鈕,將工作或我可以設置該按鈕不能按壓

<p:commandButton rendered="#{!task.IS_SEEN}" icon="ui-icon-mail-closed" /> 
<p:commandButton rendered="#{task.IS_SEEN}" icon="ui-icon-mail-open" /> 

回答

10

如果你只想要一個觸發輔助bean中的動作的可點擊圖像,我建議將一個圖形圖像包裝在h:commandLink中。

<h:commandLink rendered="#{!task.IS_SEEN}" value="" action="#{YourBean.myAction}"> 
    <h:graphicImage value="your-image-here"/> 
</h:commandLink> 

如果你想使用方便,美觀大方,矢量圖標,我建議你檢查字體真棒http://fontawesome.io/icons/爲好。

要使用字體真棒只在您的<h:head>以下行:

<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet"></link> 

然後你就可以輕鬆地把裏面commandLinks圖標在這個簡單的方法:

<h:commandLink rendered="#{!task.IS_SEEN}" value="" action="#{YourBean.myAction}"> 
    <i class="fa fa-envelope"></i> 
</h:commandLink> 
+0

hi eldbuild誰可以使用此圖片 bvb1909

+0

h標記使用* styleClass *屬性: Ahmet

0

那些實際上CSS類,指向一個精靈文件,所以在技術上他們不是圖標。

嘗試使用:

<h:panelGroup styleClass="ui-icon-mail-closed" rendered="#{!task.IS_SEEN}" /> 

,如果有一個需要它的風格與相應的填充。

+0

它無法正常工作,我用它在column的dataTable中,這可能是一個問題嗎? – bvb1909

+0

不這麼認爲,但有些代碼會幫助 – Kuba

+0

順便說一句,用elbuild建議的Font Awesome來嘗試它,這真的很棒! – Kuba

5

還需要指定CSS class ui-icon是這樣的:

<h:panelGroup styleClass="ui-icon ui-icon-mail-closed" />