Форматировать номер в теге Struts 2 <s: property /> - PullRequest
14 голосов
/ 13 октября 2009

Я хотел бы отформатировать число, отображаемое тегом <s:property value="summary.total"/> в Struts 2. Существует значение double. Как я могу это сделать? Должен ли я использовать OGNL?

Или, может быть, я должен использовать тег <s:text/> и определить свой формат в файле ресурсов?

Ответы [ 6 ]

16 голосов
/ 22 марта 2011

путь быстрее

<s:property value="getText('{0,number,#,##0.00}',{summary.total})"/>

Лаки !! * * 1004

9 голосов
/ 13 октября 2009

Вам нужно использовать <s:text/> с <s:param/>.

Файл объекта:

summary.cost= € {0,number,##0.00}

JSP:

<s:text name="summary.cost"> 
    <s:param name="value" value="summary.total"/> 
</s:text>

В этом ответе объясняется, как использовать # и 0 в маске формата.

6 голосов
/ 08 марта 2011

Это быстрее:

<s:property value="getText('struts.money.format', {summary.cost})" />

И в вашем файле свойств это:

struts.money.format= {0,number,\u00A4##0.00}

Надеюсь, эта помощь

2 голосов
/ 05 июля 2011

У меня была эта проблема, чтобы отформатировать число таким образом 1.234,56

поэтому я предпочел оба тега struts tag и fmt tag (fmt потому что s: number не существует)

, поэтому я использовал следующий синтаксис:

 <s:label label="mylabel">
    <s:param name="value">
        <s:text  name="">
    <fmt:formatNumber  maxFractionDigits="2" pattern="#.###"  >1234.56</fmt:formatNumber>
        </s:text>   
    </s:param>      
 </s:label>

и это работа

1 голос
/ 16 ноября 2013

Если ваша собственность не является числом в вашем действии, то getText не будет работать с ним. Шаблон принимает только цифры. В этом случае вы можете использовать fmt, как указано @ sarie

<fmt:formatNumber groupingUsed="true" type="currency" value="${amount}" />
0 голосов
/ 13 июня 2019

Самый быстрый и простой способ - использовать тег <s:number />.

Пример:

<s:number name="%{summary.total}" minimumFractionDigits="2" type="currency" currency="USD" />

Подробнее о теге здесь https://struts.apache.org/maven/struts2-core/apidocs/org/apache/struts2/components/Number.html

...