Форматирование данных
Как отформатировать данные прямо в хранилище. Для таблиц есть renderer, но мне нужно их использовать в комбобоксе. Т.е. у мея есть поля id и created. created - это время в секундах. Мне нужно получить в оптионах что то вроде: Запись № 1 [22.05.12].
Делаю так:
listConfig: {itemTpl: 'Запись № {id} - <font color="#777777">[{created}]</font>'},
Нужно ещё как то отформатировать created |
var
store = Ext.create("Ext.data.ArrayStore", {
fields: [
{ name: "id", type: "int" },
{ name: "value", type: "date", dateFormat: "c" }
],
proxy: {
type: "memory",
reader: {
type: "array"
}
},
data: [
[ 1, "2012-04-19T14:55:13.123" ],
[ 2, "2012-04-19T11:55:13.123Z" ],
[ 3, "2012-04-20T19:00:00.000" ],
[ 4, "2012-04-20T19:00:00.000Z" ]
]
});
Ext.create("Ext.form.field.ComboBox", {
store: store,
valueField: "id",
displayField: "value",
queryMode: "local",
editable: false,
listConfig: {
tpl: new Ext.XTemplate("<ul><tpl for=\".\"><li role=\"option\" class=\"" + Ext.baseCSSPrefix + "boundlist-item" + "\"><div>{value:date(\"d.m.Y\")}</div></li></tpl></ul>")
},
renderTo: Ext.getBody()
});
|
[{created:date("d.m.Y")}]
так работает, только у меня дата в виде числа секунд, поэтому NaN.NaN.NaN |
Цитата:
tpl: new Ext.XTemplate("<ul><tpl for=\".\"><li role=\"option\" class=\"" + Ext.baseCSSPrefix + "boundlist-item" + "\"><div>{[Ext.Date.format(new Date(values.created*1000), \"d.m.Y\")]}</div></li></tpl></ul>")
|
Ex_Soft,
круто, спасибо! |
| Часовой пояс GMT +3, время: 04:38. |