Форматирование данных на выходе в 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, время: 17:38. |