我有一些像下面这样的代码并且它可以工作,但是我想显示“number%”而不是只显示一个数字。这就是我所拥有的:
<h:outputtext value="#{somebean.doubleValue}">
<f:convertnumber maxfractiondigits="2">
</h:outputtext>
如果我在value属性中放入“%”符号,转换器将无法工作(我相信因为评估结果不仅仅是一个数字),但如果我将“%”符号放在其他outputtext标记中,数字和它之间出现一个换行符。我不希望这样。
<h:outputtext value="#{somebean.doubleValue}">
<f:convertnumber maxfractiondigits="2">
</h:outputtext>
<h:outputtext value="%"> <!--prints a new line-->
在jsf上实现“xx.xx%”格式化的最佳方法是什么?
答案 0 :(得分:5)
将公共父元素的CSS white-space
属性设置为nowrap
。
E.g。
<span style="white-space: nowrap;">
<h:outputText value="#{somebean.doubleValue}">
<f:convertNumber maxfractiondigits="2">
</h:outputText>%
</span>
(注意:纯文本不一定需要<h:outputText>
)
如果您实际在<h:column>
中使用此功能(正如我最初的猜测),您可以通过{{1}的<td>
属性为columnClasses
指定一个类名}。