2012-04-27 8 views
1

В моей модели (Ext.data.Model) у меня есть следующее свойстводаты с ExtJS 4.1 Проблемы

{ 
    mapping:'Created', 
    name:'Created', 
    type: 'date', 
    format:'d/m/Y' 
}, 

В моей форме я имею следующее поле

    { 
         xtype:'datefield', 
         name:'Created', 
         fieldLabel:' Date', 
         format:'d/m/Y', 
         width: 350 
        }, 

Если я выбрать следующая дата в сборщике «01/04/2012» (я в Великобритании, 1 апреля 2012 года)

Я получаю следующее в сообщении firebug json «2012-01-04T00: 00: 00» (4 января 2012)

Как я обеспечить правильные регионы приходят через

ответ

1

на поле формы вам нужно дополнительное submitFormat свойство:

{ 
    xtype:'datefield', 
    name:'Created', 
    fieldLabel:' Date', 
    format:'d/m/Y', 
    width: 350, 
    submitFormat: 'd/m/Y' 
} 
+1

Свойство 'format' полезно для 4.2 Ext.js – Meredith

2

В модели можно определить Ext.data.Field. Посмотрите в документах API, Ext.data.Field не имеет конфигурации с именем format, но dateFormat.

Попробуйте

{ 
    name:'Created', 
    type: 'date', 
    dateFormat:'d/m/Y' 
}, 

и вам просто нужно mapping, если ваши данные из внутреннего интерфейса имеет другое имя, как вы хотите использовать в модели.

BTW: поскольку ExtJS 4.1.3 также есть два новых элемента конфигурации: dateReadFormat и dateWriteFormat, чтобы определить другой формат для читателя и автора. Но если вы определите dateFormat, это будет одинаково для обоих.

+1

FYI для читателей: свойство' dateFormat' не находится в xtype 'datefield' в 4.2 Ext.js – Meredith

Смежные вопросы