Я использую fmt: formatNumber для форматирования валюты в JSTL, она отображает отрицательную валюту в ($ 100) формате, как мне отображать отрицательную валюту в отрицательный формат вместо ($ 100)?
спасибо очень много,
Сью
Я использую fmt: formatNumber для форматирования валюты в JSTL, она отображает отрицательную валюту в ($ 100) формате, как мне отображать отрицательную валюту в отрицательный формат вместо ($ 100)?
спасибо очень много,
Сью
Я хотел бы предложить: <fmt:formatNumber type="currency" pattern="$#,##0.00;-$#,##0.00" value="-10000" />
Вы можете удалить '$' из шаблона, если вам нравится.
Просто добавьте, если u использует тип как curreny, тогда требуется валютный кодекс, иначе отображается случайный символ. Если и не хотите использовать CurrencyCode [будет ldisplay, что каждый у уточнили в currecyCode], а затем использовать шаблон, как
<fmt:formatNumber type="currency" pattern="#,##0.00;" value="-10000" />
Если вы используете атрибут шаблона и вы хотите, чтобы отобразить символ валюты, то вы необходимо добавить держателя символа валюты (¤) к самому шаблону. ¤ будет заменен заданным значением валютыSymbol.
В примере я показываю два формата в атрибуте pattern. Один для положительных значений и один для отрицательных значений. Они разделены точкой с запятой ';'. Оба используют держатель места для валютыSymbol.
Пример:
<fmt:formatNumber value="-10000" type="currency" currencySymbol="$" pattern="¤ #,##0.00;¤ -#,##0.00"/>
Проблема с этим решением является то, что он всегда будет отображать '$' как CURRENCYSYMBOL. Если вы пытаетесь отобразить валюту, она не будет работать. – Neuquino
ну, вы можете использовать pattern = "#, ## 0.00; - #, ## 0.00" это не отображает символ $ – andyCao