我有一个文本字段:
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' }
]
为什么标记点不起作用? 我怎么才能意识到日期已经成熟?
答案 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
}
]
我不知道,但我相信要记住设置双重问号非常重要。