2012-03-28 36 views
4

我是否應該使用<h:outputText value="static text"/>或直接將static text寫入xhtml文件以打印靜態文本?我應該用<h:outputText>打印靜態文本嗎?

例子 - 與輸出文本:

<h:outputText value="User Name:"/> 
<h:outputText value="#{currentUser.name}"/> 

示例 - 直接:

User Name: 
<h:outputText value="#{currentUser.name}"/> 

回答

8

就直接寫成沒有的outputText的頁面。你甚至可以寫一個沒有標籤的el表達式。所以,你可以寫:

User name: #{currentUser.name} 

我們將outputText需要(等等),如果你想改變與阿賈克斯的文本,使其有條件或如果你想某些樣式應用到文本。

+4

或者當您想禁用隱式HTML轉義時。 – BalusC 2012-03-28 18:22:39

+0

沒有'h:outputText'的'#{currentUser.name}'不能轉義內容,對吧? – Ralph 2012-03-28 20:26:23

+5

@Ralph:不,它**被**逃脫。另見http://stackoverflow.com/questions/7722159/csrf-xss-and-sql-injection-attack-prevention-in-jsf/7725675#7725675 – BalusC 2012-03-29 02:22:00

相關問題