Sapui5 sap.m.Date(Time)选择器的掩码输入
使用Sapui5 sap.m.Date(Time)选择器的掩码输入,sapui5,Sapui5,使用sap.m.DateTimePicker,用户可以从下拉列表中选择值或手动输入值。我想知道是否有办法在手动输入框中添加一个与DateTimePicker的valueFormat匹配的掩码 我知道也有一个sap.m.MaskInput,所以也许有一种方法可以将这两个元素结合起来。我认为将两个sap.m.DateTimePicker和sap.m.MaskInput结合起来的唯一方法是开发您自己的控件。文档: 另一种方法是只使用DateTimePicker输入字段的占位符。这不提供与MaskInp
sap.m.DateTimePicker
,用户可以从下拉列表中选择值或手动输入值。我想知道是否有办法在手动输入框中添加一个与DateTimePicker
的valueFormat
匹配的掩码
我知道也有一个
sap.m.MaskInput
,所以也许有一种方法可以将这两个元素结合起来。我认为将两个sap.m.DateTimePicker和sap.m.MaskInput结合起来的唯一方法是开发您自己的控件。文档:
另一种方法是只使用DateTimePicker输入字段的占位符。这不提供与MaskInput相同的功能,但有助于用户在手动输入时输入所需的valueFormat。如果输入框中有绑定,则可以将绑定中的类型设置为例如sap.ui.model.type.Date。这样,当触发字段验证时,可以自动设置格式。还有其他可用的类型,您可以从sap.ui.model.SimpleType继承来编写自己的代码。有一个新的私有模块,名为sap.m.InputBase(即DateTimePicker)应该使用它 (MaskEnabler)应应用于
sap.m.InputBase
的原型
遮罩功能当前仅在(v1.54)中启用。然而,根据消息,同样的功能也将到达日期(时间)选择器:
此更改准备重构日期选择器和时间选择器,以便
两个选择器的公共代码可以移动到新的公共控件
它们可能会延长
因此,如果不是紧急的,并且取决于您的项目,我不会创建一个新的自定义控件,然后在掩码功能到达后将其丢弃
我会在答案可用时更新答案
在此之前(甚至之后),您仍然可以引导用户通过OData绑定类型以正确的格式输入数据:
- ,
允许我们保持双向数据绑定type
- 在以下情况下,将自动截取输入值以更新模型数据。。。
- 由于格式无效,无法对其进行分析()
- 可以对其进行分析,但违反了
(激发约束
)验证错误
- 如果你 此外,框架将负责创建适当的 给用户的消息:
示例:然后我失去了
日期时间选择器的功能,尤其是下拉日历太棒了!我现在只使用一个占位符值,当它变为available@GianPaoloBuffo您可以保留占位符,但UI5提供了更强大的方法来通知用户如何正确输入数据。由于双向数据绑定和绑定类型,数据将始终正确地存储在模型中,并在UI中进行适当的格式化。看看我最新的答案。
<DateTimePicker
value="{
path: 'myODataModel>myDateTime',
type: 'sap.ui.model.odata.type.DateTime',
constraints: {
isDateOnly: true,
displayFormat: 'Date'
}
}"
minDate="{...}"
maxDate="{...}"
/>