Проблема при повторном открытии MODx.Window
Создаю компонент для своего проекта.
При повторном открытии Window в админке, неправильно подгружается кастомный комбобокс, повторно выводя просто label множество раз. Если не использовать Combobox, или использовать один из других моих Combobox, то всё нормально.
Проблема и при обновлении, и при создании нового объекта.
Ошибок в логе даже при полном логгировании нет, консоль браузера чиста.
Суть компонента в том, чтобы задавать периоды туров, с датами, календарём, неделями, кастомными ценами на нужный период. Цена формируется из множества показателей, и полей, выбираемых пользователем для расчета.
Для каждого из полей есть свой шаблон расчета, который мы и выбираем в нашем проблемном окне.
Код комбобокса:
В ExtJS плохо разбираюсь, слишком большой фреймворк и использую его только в админке MODX.
При повторном открытии Window в админке, неправильно подгружается кастомный комбобокс, повторно выводя просто label множество раз. Если не использовать Combobox, или использовать один из других моих Combobox, то всё нормально.
Проблема и при обновлении, и при создании нового объекта.
Ошибок в логе даже при полном логгировании нет, консоль браузера чиста.
Суть компонента в том, чтобы задавать периоды туров, с датами, календарём, неделями, кастомными ценами на нужный период. Цена формируется из множества показателей, и полей, выбираемых пользователем для расчета.
Для каждого из полей есть свой шаблон расчета, который мы и выбираем в нашем проблемном окне.
TourDate.combo.Calculation = function (config) {
config = config || {};
Ext.applyIf(config, {
name: 'name',
id: 'tourdate-combo-calculation',
hiddenName: 'name',
displayField: 'name',
valueField: 'name',
fields: ['name', 'calc_type', 'calc_dependency', 'calc_group_include', 'calc_scheme'],
pageSize: 10,
emptyText: 'Выберите калькуляцию',
url: '/assets/components/scheduleprice/connector.php',
tpl: new Ext.XTemplate(
'<tpl for="."><div class="x-combo-list-item">',
'<b>{name}</b> <small>({calc_type}, зависит от кол-ва: {calc_dependency}, входит в группу туристов:
{calc_group_include})',
'
схема: <b>{calc_scheme}</b></small>',
'</div></tpl>',
{
compiled: true
}),
baseParams: {
action: 'mgr/calculation/field/getlist',
calculation_id: config.calculation_id,
combo: true,
sort: 'name',
dir: 'asc',
},
});
TourDate.combo.Calculation.superclass.constructor.call(this, config);
};
Ext.extend(TourDate.combo.Calculation, MODx.combo.ComboBox);
Ext.reg('tourdate-combo-calculation', TourDate.combo.Calculation);
Если кто-то из разработчиков компонентов сталкивался с проблемой, буду благодарен, если подскажете.В ExtJS плохо разбираюсь, слишком большой фреймворк и использую его только в админке MODX.
Комментарии: 3
А код создания окна? Точнее именно этого поля.
Если поставить точку остановки debugger, то поле создается 1 раз?
Если поставить точку остановки debugger, то поле создается 1 раз?
Спасибо, помогло! В который раз выручаете, ошибка больше не появляется.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.