Extjs 如何在datepicker中设置时间?

Extjs 如何在datepicker中设置时间?,extjs,extjs7,Extjs,Extjs7,我曾经能够通过在6.2.0中这样做在datefield中设置时间 select: function (cmp, v) { var d = v; d.setHours(23); d.setMinutes(59); d.setSeconds(59); cmp.setValue(d); } 但是现在在ExtJs7中,setValue()也将触发select事件。所以,它变成了一个循环 所以,在datefield中是否有其他方法来设置时间?您可以使用'submitForm

我曾经能够通过在6.2.0中这样做在datefield中设置时间

select: function (cmp, v) {
   var d = v;
   d.setHours(23);
   d.setMinutes(59);
   d.setSeconds(59);
   cmp.setValue(d);
}
但是现在在ExtJs7中,setValue()也将触发select事件。所以,它变成了一个循环


所以,在datefield中是否有其他方法来设置时间?

您可以使用'submitFormat'配置属性来设置日期的默认时间:

Ext.create('Ext.form.Panel', {
    renderTo: Ext.getBody(),
    width: 300,
    bodyPadding: 10,
    title: 'Dates',
    items: [{
        xtype: 'datefield',
        anchor: '100%',
        fieldLabel: 'To',
        name: 'to_date',
        value: new Date(),
        submitFormat: 'Y-m-d 23:59:59' // <-- THIS ONE
    }],
    buttons: [{
        text: "Show Values",
        handler: function() {
            console.log(this.up('form').getValues());
        }
    }]
});
Ext.create('Ext.form.Panel'{
renderTo:Ext.getBody(),
宽度:300,
车身衬垫:10,
标题:“日期”,
项目:[{
xtype:'日期字段',
主播:100%,
fieldLabel:'到',
姓名:'截止日期',
值:新日期(),

submitFormat:'Y-m-d 23:59:59'//尝试使用setRawValue而不是SetValues不幸的是,这不会在选择后更改日期字段值。我最终使用setRawValue()