2015-07-17 6 views
0

Я доволен интересной проблемой с свойством multiSelect моей combobox.Динамическая настройка multiSelect для combobox в extJS

У меня есть сетка с тремя столбцами ID, Name, Associated Part.

Я включил плагин и редакторы Rowiting для ID - текстовое поле (EditID), Name - текстовое поле (EditName), а Associated Part - combobox (EditPartCombo с multiSelect true).

У меня есть две кнопки Добавить и обновить.

Когда я выбираю любую строку в сетке и нажимаю «Обновить», начинается ротация в этом точном положении. В коде кнопки обновления я устанавливаю для свойства multiselect EditPartCombo значение false, но каким-то образом он не отражает.

Код на кнопку Update:

{ 
text: 'Update Press', 

handler: function(btn){ 

var grid = btn.up('grid'); 
var selection = grid.getSelectionModel().getSelection(); 


if(selection.length > 0){ 

combo = Ext.getCmp('EditPartCombo'); 
combo.multiSelect = false; 
delete combo.picker; 
combo.createPicker(); 
combo.reset(); 

var rowEditing = grid.getPlugin('RowEditPlugin'); 
var rowno = grid.store.indexOf(selection[0]); 
rowEditing.cancelEdit(); 

rowEditing.startEdit(rowno, 1); 
} 

else{ Ext.Msg.alert('Error' , 'Please Select a row to Update'); } 

} 

В поджигатель, когда я инспектировать комбо - это показывает, что MULTISELECT как ложные, но все же я могу выбрать несколько значений.

Не уверен, что я делаю неправильно?

Пожалуйста, помогите.

Заранее спасибо.

+1

Вопрос только в том случае. Тогда в чем смысл Multiselect? Почему у вас есть это? – aMazing

+0

На самом деле я просто добавил кнопку добавления. Поэтому, если нажата кнопка «Добавить», мне нужно, чтобы она была мультиселекцией. Если нажата кнопка «Обновить», мне нужна она как SingleSelect. –

ответ

1

Если вы создаете значение конфигурации после создания компонента, это не гарантируется, что это значение применяется. Для некоторых вариантов конфигурации это и для других, это не работает.

Я бы порекомендовал вам Ext.create combobox и в это время ввел эту конфигурацию multiSelect. Как и для одной кнопки, вы создаете ее с включенным multiSelect и отключены для другого.

Смежные вопросы