文本字段中的日期格式

时间:2013-02-08 11:54:05

标签: date format sencha-touch-2 textfield

我有一个文本字段:

xtype: "fieldset",
items:[
   {
    xtype: "textfield",
    name: "dateScanned",
    label: "Datum",
    disabled: true,
    tpl: "{dateScanned:date('d/m/Y H:i')}"  // <--- this dosn't work
   }
]

我的商店是:

fields: [
    { name: 'dateScanned', type: 'date', dateFormat: 'c' }
]

为什么标记点不起作用? 我怎么才能意识到日期已经成熟?

3 个答案:

答案 0 :(得分:2)

/*Override to allow textfields to format dates*/
Ext.override(Ext.field.Text, {
    setValue: function (value) {
        if (this.config.dateFormat && value) {
            if (Ext.isDate(value)) {
                value = Ext.Date.format(value, this.config.dateFormat);
            }
            else {
                var d = new Date(value);
                value = Ext.Date.format(d, this.config.dateFormat);
            }
        }
        this.callSuper(arguments);
    }
});

答案 1 :(得分:1)

MyApp你在那里插入那个覆盖吗? 如果我在app / field / Text.js下添加一个新的Text.js并将其链接在require下不起作用

<强>解

Global.asax

您在项目Project / app / field / Text.js中创建一个文件夹并将代码放入 然后根据需要添加

/*Override to allow textfields to format dates*/
Ext.define('MyApp.field.Text', {
override: 'Ext.field.Text', 
    setValue: function (value) {
        if (this.config.dateFormat && value) {
            if (Ext.isDate(value)) {
                value = Ext.Date.format(value, this.config.dateFormat);
            }
            else {
                var d = new Date(value);
                value = Ext.Date.format(d, this.config.dateFormat);
            }
        }
        this.callSuper(arguments);
    }
});

答案 2 :(得分:0)

我有一个解决方案:

dateFormat而不是tpl

xtype: "fieldset",
items:[
   {
    xtype: "datepickerfield",
    name: "dateScanned",
    label: "Datum",
    disabled: true,
    dateFormat: "d.m.Y H:i"
    //tpl: "{dateScanned:date('d/m/Y H:i')}"  // <--- this dosn't work
   }
]

我不知道,但我相信要记住设置双重问号非常重要。