我在Resource.properties
文件中有一个多行值:
TXT_ABOUT = first line \
second line \n \
third line.
我在关于框中显示:
<h:outputText value="#{txt.TXT_ABOUT}"/>
(txt
是通过faces-config.xml
:
<resource-bundle>
<base-name>com.compayn.etcetc.Resources</base-name>
<var>txt</var>
</resource-bundle>
但这对于这个问题并不重要。)
问题是:变量定义中的新行标记未显示在呈现的页面上,它们都在一行中。这个语法是否正常? \n
好吗?
答案 0 :(得分:4)
您必须在该行的末尾使用反斜杠(\
)。这个问题已经被问到here。
您的问题可能是因为HTML并不关心新行。如果要显示新行,则必须使用<br />
标记。
您可以在属性文件中包含HTML代码,并使用escape="false"
以避免在生成HTML时转义HTML代码。
TXT_ABOUT = first line<br />\
second line<br />\
third line.
JSF代码:
<h:outputText value="#{txt.TXT_ABOUT}" escape="false" />