2012-04-17 61 views
3

我們將我們的JSF升級至最新版本2.1。以前我們在JSF2.0.4中。我們的xhtml頁面使用條件註釋標記來定位IE,這些標記不是以文本形式呈現的。JSF2.1.7呈現<!--[if IE ]>標記爲文字

但是,新的JSF2.1.7這是呈現爲IE中的文本。任何想法如何解決這個問題?

回答

5

改爲使用<h:outputText escape="false">

<h:outputText value="&lt;!--[if IE]&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;ie.css&quot;/&gt;&lt;![endif]--&gt;" escape="false" /> 
+0

感謝BaluCs ....但爲什麼它在JSF2.0.4 – user684434 2012-04-17 17:42:45

+0

工作很抱歉,不能回答從頭頂現在。我們總是使用'javax.faces.FACELETS_SKIP_COMMENTS'。這些症狀至少表明,註釋的渲染已經改變,不再解釋註釋中的任何封閉的HTML/JSF代碼(當然,這是有道理的)。 – BalusC 2012-04-17 17:58:11

+0

醜陋的解決方案,但看起來是唯一可能的方式。 – Nowaker 2012-07-17 11:44:14

0

你可以做這樣的事情:

<f:verbatim> 
    <!--[if lte IE 8]> 
    <script src="js/conditional-comment.js"></script> 
    <![endif]--> 
</f:verbatim> 
+1

自從JSF 2.0以後,''已棄用。 – BalusC 2012-10-17 13:13:25