use*_*246 2 jsf converter selectonemenu
我有一个数字列表(范围500 - 5000,步长500).我想添加一个小数点1000 - > 1.000; 2500 - > 2.500等,但只是标签不能保存为值.我尝试了以下但它没有工作:
<h:selectOneMenu value="#{bean.selectedValue}">
<f:convertNumber type="currency" locale="de-DE" pattern="#,###" />
<f:selectItems itemValue="#{bean.selectItemslist}" var="item" itemLabel="#{item.label}" itemValue="#{item.value} />
</h:selectOneMenu>
Run Code Online (Sandbox Code Playgroud)
但这没有做任何事情:(
尝试了几种模式并包含integerOnly ="true"但似乎没有任何效果:(感谢您的帮助!
转换器仅适用于项目值,而不适用于项目标签.这就解释了为什么它"失败".在这种特殊情况下,最好的办法是创建一个自定义EL函数,这样你最终会得到这样的结果:
<f:selectItems ... itemLabel="#{my:formatNumber(item.label, '#,###')}" />
Run Code Online (Sandbox Code Playgroud)
JSF实用程序库OmniFaces有几个,另见OmniFaces 函数/ Numbers展示.
归档时间: |
|
查看次数: |
1225 次 |
最近记录: |