2

用户想要用于在表单中输入日期的日期格式列表是有限的。这些格式包括月份和日期的一位数以及年份的两位数。该字段由 dateText 控件表示。

如何让 dateText 控件接受多种日期格式?我只看到列出了 3 个(https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GZCP_forms_dateText),这些是否包括使用单个数字表示月份和日期?

我尝试设置 format = "#(myPageProperty.myValue)# " 的值,但在 Studio 中出现编译错误,因此无处可去。有没有人能够根据用户输入值设置格式值?

我猜测在验证之前必须将控制输入值转换为 YYYY-MM-DD。我愿意调用一个 javascript 函数来做到这一点,但哪里是最好的放置它的地方?

4

1 回答 1

1

有关详细信息,请参阅 Class %ZEN.Component.dateText

设置格式:

Property format As %ZEN.Datatype.string(MAXLEN = 3, **VALUELIST = ",MDY,DMY,YMD",** ZENEXPRESSION = 1)  

你正好有 3 种格式或“”

您对值的猜测是正确的并记录在案:
/// 此控件的值始终采用规范形式:YYYY-MM-DD

由于这是 ZEN 最古老的组件之一,您实现操作方式的唯一机会
是创建您自己的版本,继承自
Class %ZEN.Component.dateText 并重载您想要更改的部分

于 2021-08-31T21:00:29.790 回答