如何从 ExtJs 中的 DateField 获取日期

Posted

技术标签:

【中文标题】如何从 ExtJs 中的 DateField 获取日期【英文标题】:How can I get Date From DateField In ExtJs 【发布时间】:2013-02-14 11:09:08 【问题描述】:

如何从所有浏览器支持的 extjs 4.0 中的日期字段中仅获取 02/8/2013 mm/dd/yyyy 之类的日期。

我的代码如下

   items: [                  
                xtype: 'datefield',
                fieldLabel: 'Date',
                format: 'm/d/Y',
                altFormats: 'm/d/Y',

            ,

我正在像这样从这个字段中获取一个值

date = Ext.getCmp('configuration-section-contact-form-date-of-issue').getValue();

通过使用上面的行,我得到了完整的 UTC 时间,但我只想要像 02/8/2013 这样的日期。我怎样才能得到请帮助我。 谢谢..

【问题讨论】:

不要配置altFormats。默认为:m/d/Y|n/j/Y|n/j/y|m/j/y|n/d/y|m/j/Y|n/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d|n-j|n/j 【参考方案1】:

你可以使用:

dateField.getSubmitValue();

查看jsfiddle上的实时示例

【讨论】:

【参考方案2】:

试试这个:

Ext.getCmp('configuration-section-contact-form-date-of-issue').getValue().format('m/d/Y');

【讨论】:

TypeError: Ext.getCmp(...).getValue(...).format 不是函数【参考方案3】:

您可以使用“Ext.util.Format.Date”方法将日期格式化为所需的格式。

Ext.util.Format.Date(Ext.getCmp('configuration-section-contact-form-date-of-issue').getValue(),'m/d/Y')

【讨论】:

TypeError: Ext.util.Format.Date is not a function 这是错误 请使用 Ext.util.Format.date 而不是 Ext.util.Format.Date。 @sushantjain 这是个坏主意。如果您更改 datefild 中的格式,则必须更改 Ext.util.Format。【参考方案4】:

我今天遇到了这个问题,我用那个方法并且成功了:

var searchText = Ext.util.Format.date(Ext.getCmp('pes1').getValue(), 'd/m/Y');

【讨论】:

以上是关于如何从 ExtJs 中的 DateField 获取日期的主要内容,如果未能解决你的问题,请参考以下文章

ExtJS 'datefield' 验证覆盖

Extjs 4.1 datefield - 设置本周的第一天和最后一天

extjs datefield iso格式?

extjs计算两个DateField所间隔的月份(天数)

Datefield Extjs显示少于100的年份

如何从 Extjs4 中的商店获取字段类型?