

 
 
那么我们可以重写一下 Ext.form.DisplayField,让他支持 format 属性
Ext.override(Ext.form.DisplayField, {
 getValue: function () {
 return this.value;
 },
 setValue: function (v) {
 this.value = v;
 this.setRawValue(this.formatValue(v));
 return this;
 },
 formatValue: function (v) {
 if (this.dateFormat && Ext.isDate(v)) {
 return v.dateFormat(this.dateFormat);
 }
 if (this.numberFormat && typeof v == 'number') {
 return Ext.util.Format.number(v, this.numberFormat);
 }
 return v;
 }
});
var form = new Ext.form.FormPanel({
frame: true,
renderTo: 'form-div',
items: [{
xtype: 'displayfield',
fieldLabel: 'Date',
value: new Date(),
dateFormat: 'm/d Y'
}]
});

应该还是比较 perfect 的,哈哈哈
