首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >大写或大写字母仅在sap.m.Input控制器UI5中使用

大写或大写字母仅在sap.m.Input控制器UI5中使用
EN

Stack Overflow用户
提问于 2019-01-28 11:52:57
回答 4查看 5.7K关注 0票数 2

我在我的sap.m.Input应用程序中使用了一个SAPUI5控制器,我希望这个字段中的输入文本只显示大写字母/大写字母。实际值与数据验证一起格式化在后端。

是否有任何现成的属性来启用大写模式?

我在API引用处检查了控制特性,但是找不到类似的东西。

问题扩展:

据我所知,JS的替代解决方案是使用CSS属性:text-transform: uppercase;,并将这种样式附加到特定的sap.m.Input控制器。

从性能角度看,哪种方法更可取--使用基于CSS的(text-transform)技术还是基于JS的(liveChange)技术?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2019-01-29 07:11:14

据我所知,更好的解决方案是使用CSS:

代码语言:javascript
复制
.sapMInput.myCustomCSSClass .sapMInputBaseInner {
    text-transform: uppercase;
}
票数 2
EN

Stack Overflow用户

发布于 2019-01-28 12:10:29

您可以通过liveChange事件来完成此操作:

代码语言:javascript
复制
<Input liveChange = "onLiveChange"></Input>

在控制器中定义函数:

代码语言:javascript
复制
onLiveChange: function(oEvent) {

    var input = oEvent.getSource();

    input.setValue(input.getValue().toUpperCase());
}

如果要在输入控件中显示初始值,可以定义格式化程序,该格式化程序将字符串格式化为大写。

票数 1
EN

Stack Overflow用户

发布于 2020-07-07 22:23:26

下面是您只需要编写以解决您的需求的一行代码。不需要控制器,只需键入视图:)。此方法通过使用表达式解决问题。

代码语言:javascript
复制
<Input value = "{ value: '' constraints: { search: '^[A-Z]*$' } }" />

使用search约束意味着它将在输入中搜索并根据您设置的值检查它。

'^[A-Z]*$'只表示大写字母,这是正则表达式或正则表达式。

要启用自动错误处理,只需将1行代码添加到manifest.json:"handleValidation": true,的“"handleValidation": true,”部分中,它将自动呈现一条错误消息以指导用户。

其他人可能会发现另一个正则表达式:'^[A-Za-z]*$',这意味着您只能键入字母、大写和小写。

下面是关于内联验证的有用资源:https://sapui5.hana.ondemand.com/#/topic/07e4b920f5734fd78fdaa236f26236d8

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54401442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档