Ext.form.NumberField 中的数千个分隔符
Posted
技术标签:
【中文标题】Ext.form.NumberField 中的数千个分隔符【英文标题】:Thousands separators in Ext.form.NumberField 【发布时间】:2011-09-14 08:12:08 【问题描述】:我想覆盖 Ext.form.NumberField 的一些配置选项,但我没有找到类似“千位分隔符”的东西。有没有办法为 Ext 中的 NumberFields 定义这个?
还是我必须编写自己的函数来提供此功能?
【问题讨论】:
你想在这里实现什么?设置一个不同的字符作为千位分隔符? 是的,这正是我想要做的 好的,请看下面的答案,我想应该会有所帮助 【参考方案1】:你也可以使用这个覆盖
Ext.override.ThousandSeparatorNumberField
【讨论】:
【参考方案2】:根据论坛/开发人员的仔细检查,NumberField 不支持格式化。网格上的 Numbercolumn 可以。
他们的建议是使用 TextField 并在显示之前格式化值服务器端,或者在文本字段的“更改”事件上应用一个函数来应用您想要的格式,例如
<ext:TextField
ID="txtField"
runat="server"
FieldLabel="My Label"
AllowBlank="false"
ReadOnly="true">
<Listeners>
<Change Handler="this.setValue(Ext.util.Format.number(newValue.replace(/[\,\.]/g, ''), '0.000/i'));" />
</Listeners>
</ext:TextField>
我假设您需要稍微调整一下以确保您的值按您的意愿显示,但应该有一些适合此处列出的 Ext.util.Format.number 模式的内容:
http://dev.sencha.com/deploy/ext-3.3.1/docs/output/Ext.util.Format.html#Ext.util.Format-number
【讨论】:
你说 NumberField 不支持格式化。我想,这是不正确的。有一个名为“decimalSeparator”的配置选项。因此,我预计必须有类似“千分隔符”的选项。但是谢谢你的回答。我会评估你的建议。 属性未格式化,在 NumberColumn 上您可以明确定义格式:例如“0.00”,并且将应用该格式。 NumberField 不支持这一点,这就是为什么您需要将函数应用于文本字段。以上是关于Ext.form.NumberField 中的数千个分隔符的主要内容,如果未能解决你的问题,请参考以下文章
查询数千个结果时,android中的Ormlite DAO变得非常慢
当表格有数千行时,如何使 UITableView 中的滚动更快?