【发布时间】:2011-05-05 21:22:45
【问题描述】:
是否可以为 dijit.form.DateTextBox 指定显示格式?
我知道 dijit.form.DateTextBox 默认从用户的语言环境获取其日期格式,并且我知道我可以将语言环境切换为我想要的任何内容,但我只需要指定日期格式而不更改任何其他内容。这可能吗?
谢谢。
【问题讨论】:
是否可以为 dijit.form.DateTextBox 指定显示格式?
我知道 dijit.form.DateTextBox 默认从用户的语言环境获取其日期格式,并且我知道我可以将语言环境切换为我想要的任何内容,但我只需要指定日期格式而不更改任何其他内容。这可能吗?
谢谢。
【问题讨论】:
是的,你可以这样做:
var occursOnField = new dijit.form.DateTextBox({
constraints: { datePattern : 'yyyy-MM-dd' }
, promptMessage: "yyyy-MM-dd"
, invalidMessage: "Invalid date format. Use yyyy-MM-dd"
})
2012 年 1 月 29 日更新:
Chrome 和 Dojo 1.6.1 的兼容性错误。
如果用太多的 0 填充月份中的某一天,请在日期模式中使用少一个 d 来解决该错误。例如,在 Google Chrome 16 和 Dojo 1.6.1 上:datePattern : 'yyyy-MM-dd' 将提供 2010-01-001,datePattern : 'yyyy-MM-d' 将提供 2010-01-1。
【讨论】:
试试这个简单的东西:
<input type="text" name="Date" id="myDate" promptMessage="Please Enter Date" value="" data-dojo-type="dijit/form/DateTextBox" constraints="{datePattern:'dd-MMM-yyyy', strict:true}" />
【讨论】: