SmartGwt DateItem useTextField=true - 如何使文本输入字段不可编辑
因为我不知道如何解决我提出的问题 这里我暂时在考虑一个临时解决方案。
我有一个 smartgwt DateItem
小部件:
DateItem date = new DateItem("Adate");
date.setWidth(120);
date.setWrapTitle(false);
date.setAttribute("useTextField", true);
date.setAttribute("inputFormat", "yyyy/MM/dd");
date.setAttribute("displayFormat", "toJapanShortDate");
因为属性 useTextField
设置为 true
我们可以看到文本输入字段。我怎样才能使这个文本输入字段不可编辑。 实际上我只想能够从日历中选择日期而不是手动更改它。
已解决 - 上面暴露的问题 - 感谢@RAS 用户。
TextItem textItem = new TextItem();
textItem.setAttribute("readOnly", true);
date.setAttribute("textFieldProperties", textItem);
但是我现在有另一个问题(已解决 - 请参阅此处): 日期选择器不会在文本字段上显示日期,而是显示今天的日期。 例如,在文本字段中输入 30/05/2009,转到另一个字段,然后返回单击日期选择器,所选的日期将是今天的日期,而不是 2009 年 6 月 30 日。这是什么原因?这个问题能解决吗?
另外,假设我让用户有机会手动修改日期 - 我可以在上面放置一些**验证器吗?**(对此仍然需要一个想法)
谢谢。
Since I can't figure out how to solve my problem presented here I'm thinking for the moment at a temporary solution.
I have a smartgwt DateItem
widget:
DateItem date = new DateItem("Adate");
date.setWidth(120);
date.setWrapTitle(false);
date.setAttribute("useTextField", true);
date.setAttribute("inputFormat", "yyyy/MM/dd");
date.setAttribute("displayFormat", "toJapanShortDate");
Because the attribute useTextField
is set to true
we can see the text entry field. How can I make this text entry field to be uneditable.
Actually I want to have only the possibility to choose the date from calendar and not to change it manually.
Resolved - the issue exposed above - thanks to @RAS user.
TextItem textItem = new TextItem();
textItem.setAttribute("readOnly", true);
date.setAttribute("textFieldProperties", textItem);
But I have now another issue (resolved - see here):
The date chooser won't show the date on the text field but Today's date.
For example, enter 30/05/2009 on the text field, go to another field, then come back on click on the date chooser and the selected day will be Today's date instead on June 30th, 2009. Which is the reason for this? Can this be solved?
Also let's say I let to the user to opportunity to manually modify the date - can I put some **validators on it?** (still need an ideea on this)
Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
http://www.smartclient.com/smartgwt/javadoc/com/smartgwt/client/widgets/form/fields/DateItem.html#setEnforceDate%28java.lang.Boolean%29
http://www.smartclient.com/smartgwt/javadoc/com/smartgwt/client/widgets/form/fields/DateItem.html#setEnforceDate%28java.lang.Boolean%29
你有很多不同的验证器。根据上下文,必须能够验证基数、与其他数据项的关系、数据类型(不仅仅是日期时间值)以及与其他外部记录的关系。
You have a lot of different validators. Depending on the context it must be possible to validate cardinality, relation to other data items, datatype(not only date time values) and relations to other external records.