如何在24小时内保持ExtJS时域的格式

时间:2013-07-10 09:16:55

标签: extjs timefield

我正在尝试使用extJS创建一个时间段组合框。我已经成功完成了这个,但是当我得到我在组合框中选择的值时,我遇到了问题。 首先是制作时间段的代码:

 items :[{
    fieldLabel: 'Start Time',
    name: 'startTime',
    xtype: 'timefield',
    id: 'startTime',
    format: 'H:i',
    altFormats:'H:i',
    increment: 30
        }]

我想要的是以24小时格式获取值。为了从时间字段中获取值,我使用以下代码:

    var startTime = Ext.getCmp('startTime').getSubmitValue();

问题在于,不是以24小时格式获取时间,而是将值转换为12小时格式。例如,当我从组合中选择时间:00:00,当我使用getSubmitValue()时,该值被转换为12:00 AM,这在我的情况下不是很有用。

我的问题是:有没有办法保持时间格式与组合框中的格式完全相同?这将是一个24小时的格式。

我希望我很清楚我想说的是什么。

由于 迪米瑞斯

2 个答案:

答案 0 :(得分:6)

原因很简单 getValue返回日期对象,getSubmitValue返回格式化日期 您只需格式化getValue方法收到的日期。

var field = Ext.getCmp('startTime');
var value = field.getValue();
var formattedValue = Ext.Date.format(value, 'H:i');

Sample here

答案 1 :(得分:0)

我发现如果我使用:

var startTime = Ext.getCmp('startTime').getRawValue();

我以24格式检索时间。