Формат даты на Grid Panel не работает, странно..!
У меня есть gridPanel с плагинами CellEditing..!
Я использую поле даты с рендерером: Ext.util.Format.dateRenderer ('Y / m / d'). Хороший формат - dysplay, но когда я получаю модель из своей сетки, у меня есть другой формат...
Мое определение поля даты:
header : 'Start Date',
dataIndex : 'start_date',
id : 'Start_Dategridid',
flex : 2,
//renderer: formatDate,
renderer: Ext.util.Format.dateRenderer('Y/m/d'),
field : {
xtype : 'datefield',
anchor : '20%',
itemId: 'Start_Date',
disabledDays : [0,6],
altFormats: 'Y/m/d',
format : 'Y/m/d',
editable: false,
value : '""',
allowBlank : true
}
Когда я получаю модель с:
var model = mystore.getAt(0);
model.get('start_date'); // I have "Wed Jul 20 2011 00:00:00 GMT+0200 (CET)"
Итак, мое приложение не может работать..:(
1 ответ
Когда вы используете метод get для получения значения - вы получите полностью проанализированное значение даты, это не то, что показано в сетке. После того как вы получили значение от модели - вы можете отформатировать его, как вам нравится.
Например:
console.log(Ext.Date.format(model.get('start_date'), Ext.Date.patterns.ShortDate));
Вы можете проверить эту ссылку: Extjs Date