Extjs:如何发送空时间段?

时间:2015-01-03 20:34:09

标签: extjs send timefield

我正在开发Extjs表单并且必须发送所有字段,也包括空字段。它适用于所有类型的字段,只有时间段不发送。这是一个datefield和timefield的例子。 为什么他们的行为不同?我应该使用哪个配置发送空时间段?首选变量名,空字符串作为值。你有什么想法吗?

Ext.create('Ext.form.Panel', {
renderTo: Ext.getBody(),
standardSubmit: true,
items: [{
    fieldLabel: 'Datefield',
    format: 'Y-m-d',
    name: 'Datefield',
    // value: '2015-01-01',
    xtype: 'datefield'
},{
    fieldLabel: 'Timefield',
    format: 'H:i:s',
    name: 'Timefield',
    // value: '16:00:00',
    xtype: 'timefield'
}],
buttons: [{
    text: 'Submit',
    formBind: true,
    handler: function(){
        this.up('form').getForm().submit({
            url: 'http://yourfavoriteurl',
            standardSubmit: true,
            method: 'POST' // 'GET'
        });
    }
}] 
});

1 个答案:

答案 0 :(得分:1)

时间场是故意开发的,因为从查询中省略时间是正常的。

如果您希望此字段在空时表现得像日期字段,请添加此覆盖:

Ext.define('Ext.view.override.TimeField',{
     override: 'Ext.form.field.Time',

     getSubmitValue: function() {
        var me = this,
            format = me.submitFormat || me.format,
            value = me.getValue();

        return value ? Ext.Date.format(value, format) : "";
    }
});