11

ここで見つかったものと同様の問題があります: JSF selectItem ラベルのフォーマット

私がやりたいことは、my の値として double を受け入れ、小数点以下 2 桁で表示することです。これは簡単な方法で行うことができますか?

使用してみましたが、入力フィールドの初期値ではなく、サーバーに送信されるinputTextの値に適用されるようです。

これまでの私のコード:

<h:inputText id="december" value="#{budgetMB.december}" onchange="setDirty()" styleClass="StandardBlack">
    <f:convertNumber maxFractionDigits="2" groupingUsed="false" />
</h:inputText>

編集: 上記のコードは実際に動作します。プロジェクトを明示的に再構築して組み込み OC4J サーバーを再起動しても、jsp ページを更新しない JDeveloper にだまされました。ただし、コンピューターを再起動した後はすべて問題ありませんでした。

4

3 に答える 3

14

あなたの要件を誤解していなければ、ビューのレンダリング中に入力ボックスの値のフォーマットを次のように達成できました。

<h:inputText id="text1" value="#{...}">
    <f:convertNumber pattern="#,###,##0.00"/>
</h:inputText>

ベンダー ブランドの Eclipse で Standard Faces Components を使用していたので、このpattern属性は標準 JSF の一部であると想定しています。

于 2008-10-03T17:53:15.290 に答える
1

入力テキスト フィールドの値を画面上で変更する (ユーザー入力を修正する) 場合は、 Rich Facesなどの JSF ajax フレームワークの 1 つを使用することを検討する必要があります。

考えられる例は次のようになります。

<h:inputText id="december" value="#{budgetMB.december}" styleClass="StandardBlack">
  <f:convertNumber maxFractionDigits="2" groupingUsed="false" />
  <a4j:support event="onblur" reRender="december" />
</h:inputText>

私はこれをテストしていませんが、うまくいくと思います。

于 2008-10-03T19:15:10.617 に答える