0

我们在使用以 $dollars 格式获取数字作为输入的控件时遇到性能问题。为了克服这个性能问题,我们在控件的绑定中使用并实现了以下计算功能。

<xforms:bind id="Amount" 
             nodeset="instance('sample_form')/Amounts/Amount" 
             calculate="if (. !=0) 
                        then format-number(xs:double(.),'$#,##0.000') 
                        else ."/>

但是上面代码的问题是,它将控件的值转换为字符串类型,这导致控件中的错误,其值依赖于此。请为我提供上述问题的解决方案或提供更好的建议来处理这种情况。

4

1 回答 1

0

如果您只想显示格式化的值(我假设是这种情况,因为您正在考虑使用 a calculate),那么您可以将您拥有的表达式放在calculate一个内部:

<xforms:output value="..."/>

如果您需要输入和输出,并且您希望存储在实例中的值只是未格式化的数字,那么我认为<fr:currency>除了以某种方式重新实现<fr:currency>. 如果您需要输入和输出,那么我建议您进一步调查以找到并解决性能问题的根源。

于 2011-05-03T17:14:00.137 回答