使用h:inputText,h:outputText等输入输出标签时,可以用f:convertNumber来转换数字,百分比或货币的格式。
输入时转换:
<h:form>
<h3>Jsf之NumberConverter</h3>
请输入价格:
<h:inputText value="#{user.price }" id="price" converterMessage="请输入一个正确的数值!">
<f:convertNumber pattern="#,###.00" type="number" />
</h:inputText>
<h:message for="price" style="color:red;"></h:message>
<h:commandButton value="提交" action="#{user.numberConvert }"></h:commandButton>
<br>
<br>
</h:form>
数字:<h:outputText value="#{100000.001 }">
<!--数字:--><f:convertNumber pattern="#,###.00" type="number"/>
</h:outputText><br>
<h:outputText value="#{user.price }">
<!--货币:-->货币:<f:convertNumber type="currency" currencySymbol="$"/>
</h:outputText><br>
<h:outputText value="#{0.152356}">
<!--百分比:-->百分比:<f:convertNumber type="percent" maxFractionDigits="3"/>
</h:outputText>
转换结果:
数字:100,000.00
货币: $113.00
百分比: 15.236%