2012-02-14 102 views
0

在我的JSF2項目中,我想根據從託管bean獲取的條件在我的Facelet頁面中包含以下兩個樣式表。有條件地鏈接到CSS文件

<link rel="stylesheet" href="css/menu_style_1.css" type="text/css" /> 
<link rel="stylesheet" href="css/menu_style_2.css" type="text/css" /> 

我該如何做到這一點?

回答

1

嘗試

<h:outputStylesheet name="css/menu_style_1.css" target="head" rendered="#{myBean.myValue eq 'myCondition1'}"/> 

<h:outputStylesheet name="css/menu_style_2.css" target="head" rendered="#{myBean.myValue eq 'myCondition2'}"/> 

或者......你可以做到這一點的一條線......

<h:outputStylesheet name="css/#{myBean.myValue == 'true' ? 'menu_style_1.css' : 'menu_style_2.css'}" target="head" /> 

我想,如果你想堅持到鏈接標籤,你可以嘗試類似的東西

<link rel="stylesheet" href="css/#{myBean.myValue == 'true' ? 'menu_style_1.css' : 'menu_style_2.css'}" type="text/css" /> 
+1

請注意'library'屬性在這裏使用不正確。第三種方法是讓bean返回'1'或'2',這樣就可以在沒有任何條件的情況下使用''。 – BalusC 2012-02-14 11:42:57

+0

好的,編輯答案... – Daniel 2012-02-14 11:50:43