4

试图在这个项目的 xhtml 中保留所有演示文稿,我需要格式化 selectItem 标记中的一些值,这些值具有 BigDecimal 值,并且需要使其看起来像货币。反正有应用<f:convertNumber pattern="$#,##0.00"/>Inside a<f:selectItem>标签吗?

有什么方法可以做到这一点或不涉及将其推送到java代码中的解决方法?

4

3 回答 3

4

在这里做了一些更多的研究之后,我非常确信这对于当前的 JSF 实现是不可能的。只是没有机会改变价值。

http://java.sun.com/javaee/javaserverfaces/1.2/docs/tlddocs/f/selectItem.html

tld 将itemLabel属性显示为 a ValueExpression,将正文内容显示<f:selectItem>为空。因此,这些标签之一中不允许存在任何内容,并且标签必须指向 Java 模型中的逐字值。所以它已经被格式化出来了 Java 模型。

于 2008-09-18T00:00:59.143 回答
2

作为 jsf 的初学者,我遇到了类似的问题,也许我的解决方案很有帮助,也许它不符合“jsf 精神”

我刚刚创建了一个自定义标记库并扩展了类(在我的情况下为 org.apache.myfaces.component.html.ext.HtmlCommandButton)并覆盖了设置器以应用自定义参数。

所以而不是 <t:commandButton/>i used <mytags:commandButton/>,它就像我想要的那样灵活。

于 2008-09-18T00:17:36.763 回答
0

您可以使用该模式设置转换器,但这听起来与您想要的完全相反。

于 2008-09-17T19:14:58.287 回答