当我有一个BigDecimal,其值为34.31并使用以下代码显示它:
<h:outputText value="#{invoice.invoiceHeader.totalInvoiceAmt}"> <f:convertNumber pattern="#0.00" type="currency" currencyCode="USD" currencySymbol="$"/> </h:outputText>我期待它显示34.31美元,但它显示34.31。
我究竟做错了什么?
When I have a BigDecimal whose value is 34.31 and I display it with the following code:
<h:outputText value="#{invoice.invoiceHeader.totalInvoiceAmt}"> <f:convertNumber pattern="#0.00" type="currency" currencyCode="USD" currencySymbol="$"/> </h:outputText>I was expecting it to display $34.31 but instead it displays 34.31.
What am I doing wrong?
最满意答案
谢谢@partlov。
当<f:convertNumber />具有模式属性时,将忽略类型和货币属性。 所以有以下几点:
<h:outputText value="#{invoice.invoiceHeader.totalInvoiceAmt}"> <f:convertNumber pattern="#0.00" type="currency" currencyCode="USD" currencySymbol="$"/> </h:outputText>仅使用pattern =“#0.00”,因此34.4变为34.40。 但有以下几点:
<h:outputText value="#{invoice.invoiceHeader.totalInvoiceAmt}"> <f:convertNumber type="currency" currencyCode="USD" currencySymbol="$"/> </h:outputText>使用所有属性导致34.4成为34.40美元。
Thanks @partlov.
When <f:convertNumber/> has a pattern attribute, the type and currency attributes are ignored. So with the following:
<h:outputText value="#{invoice.invoiceHeader.totalInvoiceAmt}"> <f:convertNumber pattern="#0.00" type="currency" currencyCode="USD" currencySymbol="$"/> </h:outputText>Only the pattern="#0.00" is used, so 34.4 becomes 34.40. But with the following:
<h:outputText value="#{invoice.invoiceHeader.totalInvoiceAmt}"> <f:convertNumber type="currency" currencyCode="USD" currencySymbol="$"/> </h:outputText>All attributes are used resulting in 34.4 becoming $34.40.
更多推荐
显示,value,电脑培训,计算机培训,IT培训"/> <meta name="description" co
发布评论