Форматирование данных на выходе в DisplayField
Добрый день!
Столкнулся с такой проблемой. Необходимо форматировать данные на выходе в DisplayField'е. Например, мне необходимо в одном из полей с числовым значением применить функцию разделения разрядов числа пробелами. Как это можно осуществить? Через Template? Поясните плиз... |
Ext.extend(Ext.ux.plugins.MyCombo, Ext.util.Observable, {
init:function(combo) {
Ext.apply(combo, {
tpl: '<tpl for=".">'{' + this.myRenderFunction() + '}'</tpl>',
myRenderFunction: function() {
// Тут ваш функционал
return myFormattedValue;
}, // end of function setIconCls
});
} // end of function init
}); // end of extend
ну и в самом комбо plugins : new Ext.ux.plugins.MyCombo(), Можно это решить как то так |
Спасиб! Сейчас попробуем! ;)
|
Есть 2 проблемы:
1. Насколько я понимаю строка "tpl: '<tpl for=".">'{' + this.myRenderFunction() + '}'</tpl>'," должна выглядеть как "tpl: '<tpl for=".">' + this.myRenderFunction() + '</tpl>'" 2. При загрузке страницы Файрбаг выводит: K is undefined |
Даже при загрузке строки:
Ext.extend(Ext.ux.plugins.MyCombo, Ext.util.Observable, {});
Выводится ошибка |
Часть проблемы решил путем обозначения:
Ext.ux.plugins.MyCombo = function(config) {
Ext.apply(this, config);
};
|
В общем, в конце концов код не выдаёт ошибок работает в таком виде:
Ext.extend(Ext.ux.plugins.MyCombo, Ext.util.Observable, {
myRenderFunction: function() {
return 'test';
}, // end of function setIconCls
init:function(combo) {
Ext.apply(combo, {
tpl: '<tpl for=".">' + this.myRenderFunction() + '</tpl>'
});
} // end of function init
}); // end of extend
Но значение не меняется |
| Часовой пояс GMT +3, время: 12:37. |