ExtJS и combobox
Доброй ночи. Почему-то некорректно срабатывает combobox, а точнее вообще не срабатывает. добавлял 2 combobox'a для 2 полей(категории и ФИО) для combobox'a с категорией все впорядке, combobox ФИО делал по аналогии(копи паст и переименовал). Но Категория работает корректно а ФИО нет, не могу понять где что пропустил. вот собственно код.
На форме обновления
так же приложу часть бд что бы было видно что да как joxi.ru/DrlVOoWuOPzo2P joxi.ru/l2Z6VRqIW4yg2J
Подскажите пожалуйста что я мог упустить, если с textfield поле natface работает хорошо, а с combobox нет… Уже 2 дня промучался так и не понял в чем беда.
На форме обновления
Ext.extend(DriverLicense.window.UpdateLicenses, MODx.Window, {
getFields: function (config) {
return [{
xtype: 'hidden',
name: 'id',
id: config.id + '-id',
}, {
xtype: 'textfield',
fieldLabel: _('driverlicense_license_number'),
name: 'number',
id: config.id + '-number',
anchor: '99%',
allowBlank: false,
}, {
xtype: 'driverlicense-combo-categorycombo',
fieldLabel: _('driverlicense_license_category'),
name: 'category',
id: config.id + '-category',
anchor: '99%',
allowBlank: false,
},{
xtype: 'datefield',
fieldLabel: _('driverlicense_license_date_open'),
name: 'date_open',
id: config.id + '-date_open',
anchor: '99%',
format: 'Y-m-d',
submitFormat: 'Y-m-d H:i:s',
allowBlank: false,
}, {
xtype: 'driverlicense-combo-natfacecombo',
fieldLabel: _('driverlicense_license_name'),
name: 'names',
id: config.id + '-names',
anchor: '99%',
allowBlank: false,
}, {
xtype: 'textfield',
fieldLabel: _('driverlicense_license_issuedby'),
name: 'issuedby',
id: config.id + '-issuedby',
anchor: '99%',
allowBlank: false,
}, {
xtype: 'textfield',
fieldLabel: _('driverlicense_license_mark'),
name: 'mark',
id: config.id + '-mark',
anchor: '99%',
allowBlank: true,
}/*, {
xtype: 'driverlicense-combo-categorycombo',
fieldLabel: _('driverlicense_license_active'),
name: 'active',
id: config.id + '-active',
anchor: '99%',
allowBlank: false,
}*/];
}
});
Ext.reg('driverlicense-licenses-window-update', DriverLicense.window.UpdateLicenses);в файле combo.jsDriverLicense.combo.CategoryCombo = function(config) {
config = config || {};
Ext.applyIf(config,{
name: 'category'
,hiddenName: 'category'
,displayField: 'name'
,valueField: 'id'
,url: DriverLicense.config.connectorUrl
,baseParams: { action: 'mgr/category/getlist' }
,fields: ['id','name']
,pageSize: 20
,typeAhead: true
,editable: true
});
DriverLicense.combo.CategoryCombo.superclass.constructor.call(this,config);
};
Ext.extend(DriverLicense.combo.CategoryCombo,MODx.combo.ComboBox);
Ext.reg('driverlicense-combo-categorycombo',DriverLicense.combo.CategoryCombo);
DriverLicense.combo.NatfaceCombo = function(config) {
config = config || {};
Ext.applyIf(config,{
name: 'natface'
,hiddenName: 'natface'
,displayField: 'name'
,valueField: 'id'
,url: DriverLicense.config.connectorUrl
,baseParams: { action: 'mgr/natface/getlist' }
,fields: ['id','name']
,pageSize: 20
,typeAhead: true
,editable: true
});
DriverLicense.combo.NatfaceCombo.superclass.constructor.call(this,config);
};
Ext.extend(DriverLicense.combo.NatfaceCombo,MODx.combo.ComboBox);
Ext.reg('driverlicense-combo-natfacecombo',DriverLicense.combo.NatfaceCombo);В процессе тестирования выявил что с xtype: 'textfield' работает форма корректно(данные изменяются). Так же в файл update.class.php вывел результат переданных значений$names = trim($this->getProperty('names'));
$this->modx->log(modX::LOG_LEVEL_ERROR, '????????????????'.$names);
$this->modx->log(modX::LOG_LEVEL_ERROR, '!!!!!!!!!!!!!!!!!!'.$this->object->get('names'));
$category = trim($this->getProperty('category'));
$this->modx->log(modX::LOG_LEVEL_ERROR, '????????????????------'.$category);
$this->modx->log(modX::LOG_LEVEL_ERROR, '!!!!!!!!!!!!!!!!!!-----'.$this->object->get('category'));и на выходе получил joxi.ru/YmEDka5FzE7er6так же приложу часть бд что бы было видно что да как joxi.ru/DrlVOoWuOPzo2P joxi.ru/l2Z6VRqIW4yg2J
Подскажите пожалуйста что я мог упустить, если с textfield поле natface работает хорошо, а с combobox нет… Уже 2 дня промучался так и не понял в чем беда.
Комментарии: 9
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Только что попробовал подключить нв столбец ФИО работающий комбобокс(Категории) и та же ситуация, на поле ФИО не происходит изминений при выборе какого либо пункста из комбобокса, при этом само поле Категории с комбобоксом Категории работает нормально.
Куда рыть уже не знаю
PS. Сейчас таблица в виде joxi.ru/KAgGMoVTbw6kAl, когда изменяю поле ФИО на получаю joxi.ru/xAe0eDohxQPN2y Но в окнах создания и редактирования почему-то происходит непонятная фигня(((
Еще один вопросик можно?)
Мы можем как-то выводить в комбобоксе не одно значение в displayField: 'name' а несколько, через запятую к примеру?
П.С. Для выражения спасибо можно можно использовать плюсик. :)
Вот я пытался сделать так
и получаю такой результат joxi.ru/12MjQYRuQMkVAJ
но когда я выбираю один из пунктов получаю пустое поле(как будто ничего и не выбирал) joxi.ru/gmvgevXSRLdd2a
И всё!
Если принципиально на ExtJS, то тут уж сам, помочь не смогу.