OpenUI5 sap.m. 输入货币格式

特里

这似乎在许多不同的时间得到回答,但我似乎无法让它与我的实现一起工作。我正在尝试格式化和限制 sap.m.Input 元素中的数据。我目前有以下几点:

var ef_Amount = new sap.m.Input({
  label: 'Amount',
  textAlign: sap.ui.core.TextAlign.Right,
  value: {
    path: '/amount',
    type: 'sap.ui.model.type.Currency'
  }
});

第一个问题是它破坏了数据绑定。当我检查提交给服务器的原始数据(使用 Fiddler)时,它是一个这样的数组:

"amount": [1234.25,null]

服务器需要一个数字,因此数组存在问题。

当我使用以下内容时,绑定会按需要工作,但不会执行任何格式设置。

var ef_Amount = new sap.m.Input({
  label: 'Amount',
  textAlign: sap.ui.core.TextAlign.Right,
  value: '{/amount}'
});

第二个问题是输入的数据不限于数字。

我曾尝试使用 sap.m.MaskedInput 代替,但我不喜欢使用占位符,因为我从不知道要输入的数字的大小。

最后,如果当焦点放在输入字段上时,所有格式都被删除并在焦点丢失时重新格式化会很好。

我应该考虑使用 jQuery 甚至原始 Javascript 来做这件事吗?

感谢您的关注。

安德烈·诺莫维奇
  1. 根据文档数组输出是正常的。所以你需要在提交之前教你的服务器接受这种格式或预处理数据;
  2. 类型并非旨在限制您的数据输入;
  3. 很好的功能,但是 ui5 不支持这个,因为 Type 对象不知道控制,它的事件像“焦点”它只处理数据输入-输出。因此,您必须通过扩展控件或其他方式自行实现此功能。

我建议分别使用金额和货币可能应该只允许用户输入有效货币,因此您可以使用包含可用货币建议的组合框。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

OpenUI5:将sap.m.ComboBox绑定到sap.ui.table.Table中的JSONModel()列

来自分类Dev

使用SAP Gateway服务OpenUI5进行OData服务身份验证

来自分类Dev

sap.m中的自定义输入类型输入sap ui5

来自分类Dev

通过javascript在文本字段中输入货币格式

来自分类Dev

SwiftUI在文本字段中输入货币格式(从右到左)

来自分类Dev

SAPUI5 / OpenUI5:打包

来自分类Dev

基本的openUI5 Split View应用

来自分类Dev

openui5 js视图addStyleClass

来自分类Dev

OpenUI5控件不可见

来自分类Dev

OpenUI5数据绑定问题

来自分类Dev

XML视图文档Openui5

来自分类Dev

在OpenUI5中强制清除缓存

来自分类Dev

OpenUI5:JS视图与XML视图

来自分类Dev

在OpenUI5中强制清除缓存

来自分类Dev

OpenUI5代码阅读

来自分类Dev

OpenUI5:组件中的访问模型

来自分类Dev

openui5 从 JSONModel 获取数据

来自分类Dev

SAPUI5 sap.m.列表:分隔线

来自分类Dev

UI5 sap.m.Table itemPress事件

来自分类Dev

UI5 sap.m.Table itemPress事件

来自分类Dev

SAPUI5数据绑定-sap.m.Text

来自分类Dev

如何使用Swift在文本字段(从右到左)输入货币格式?

来自分类Dev

如何在sap ui5的文本字段(如sap.m.Input)中设置自动完成或自动建议?

来自分类Dev

SAP UI5-如何根据行状态在sap.m.Table Multiselect表中禁用行

来自分类Dev

SAPUI5混合了移动设备(sap.m)和台式机(sap.ui.commons)

来自分类Dev

要将新图标添加到OpenUI5?

来自分类Dev

如何在Openui5中设置页面标题

来自分类Dev

在Openui5中按下项目时触发功能

来自分类Dev

使用OpenUI5和Apache Cordova的本地存储