ComboBox в компоненте
Может мне кто нибудь подсказать, почму создовая ComboBox не работает такая конструкция, а именно, проблема в том, что в выподающем списке, значения «option value», отображаются из displayField, а надо что бы было из valueField ??? Где мой косяк?
Из таблицы выбираются «0 — 1» и легким движением пальцев преврощается в буквы
Читал на форумах что надо добавить еще один параметр, типа скрытое поле через которое передается значение самого списка, при сохронении.
advert.combo.Items = function(config) {
config = config || {};
Ext.applyIf(config,{
store: new Ext.data.ArrayStore({
xtype:'combobox',
id: 0
,fields: ['value','display']
,data: [
[0, 0],
[1, 1]
]
})
,mode: 'local'
,displayField: 'display'
,valueField: 'value'
});
advert.combo.Items.superclass.constructor.call(this,config);
};
Ext.extend(advert.combo.Items,MODx.combo.ComboBox);
Ext.reg('combo-items',advert.combo.Items);
Из таблицы выбираются «0 — 1» и легким движением пальцев преврощается в буквы
renderer: function(value) {
return value == true ? 'Yes' : 'No'
}
Короче надо что бы в списке видно было «Да Нет», а в значениях этого списка было «0-1», то есть, что бы мы видели слова, а в БД летели цыфры, ну или «true-false»Читал на форумах что надо добавить еще один параметр, типа скрытое поле через которое передается значение самого списка, при сохронении.
hiddenName:'unique_name',
Но после его добовления вообще работать перестает.Комментарии: 9
Блин, если что то не понятно, вы спрашивайте, а я то может плохо объяснил проблему.
А чем не устраивает modx-combo-boolean?
Да, modx-combo-boolean то же вроде нормально, но опять же он сохроняет почему то не 0-1 и не true-false, а сохроняет Да-Нет
Попробуй указать hiddenName, такой же, как и name. Вот пример рабочего комбобокса.
Что-то у Вас намешано все в кучу.
var storeitems = new Ext.data.ArrayStore({
id: 'advert-items'
,fields: ['value',{name: 'name', type: 'string']}
,data: [[1,'Да'],[0,'Нет']]
});
advert.combo.Items = function(config) {
config = config || {};
Ext.applyIf(config,{
store: storeitems
,displayField: 'name'
,valueField: 'value'
,hiddenName: 'поле в базе=из mysql map' //не забудьте поменять
,mode: 'local'
,triggerAction: 'all'
,editable: false
,selectOnFocus: false
,preventRender: true
,forceSelection: true
,enableKeyEvents: true
});
advert.combo.Items.superclass.constructor.call(this,config);
};
Ext.extend(advert.combo.Items,MODx.combo.ComboBox);
Ext.reg('advert-combo-items',miniShop2.combo.ProductSex);
Как то странно выглядет этот параметр )))
fields: ['value',{name: 'name', type: 'string']}
Ну бывает :) скобочки местами перепутал
Все супер, все работает идеально, ОГРОМНОЕ ВСЕМ СПАСИБО!!!
Всем привет! А у меня проблема с modx-combo-boolean в том, что значение НЕТ не отображается. Никак не могу понять где исправить, чтобы принимались значение false для характеристик
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.