将数据从一个商店复制到另一个商店并将商店分配给组合,Combo下拉列表显示值,但如果我选择一个值,则它不会被选中,也不会在组合框中显示为选定值。
Ext.each(abcStore.data.items, function (item) {
if(item.data.isAutoAnalyst == 1) {
Ext.each(item.raw.subservices, function(i){
abcSubStore.add(i);
});
}
});
答案 0 :(得分:0)
我创建了一个两个组合框和一个按钮。第一个组合框有商店和一些默认值。第二个组合框有商店但没有价值。单击按钮时,第一个组合框值将添加到第二个组合框中。
从一个组合框向另一个组合框添加数据时,我没有添加条件。单击按钮后,第二个组合框将显示第一个组合框中的所有值,当您选择任何值时,它将显示在组合文本字段中。
Ext.onReady(function() {
var comboBox1 = new Ext.data.JsonStore({
autoLoad: false,
fields: ['text', 'value'],
data: [{
'text': "Value1",
'value': 'Value1'
}, {
'text': "Value2",
'value': 'Value2'
}, {
'text': "Value3",
'value': 'Value3'
}, {
'text': "Value4",
'value': 'Value4'
}, {
'text': "Value5",
'value': 'Value5'
}, {
'text': "Value6",
'value': 'Value6'
}]
});
var comboBox2 = new Ext.data.JsonStore({
autoLoad: false,
fields: ['text', 'value']
});
Ext.create('Ext.window.Window', {
width: 400,
height: 300,
items: [{
xtype: 'combobox',
id: 'comboBox1',
store: comboBox1,
displayField: 'text',
valueField: 'value',
queryMode: 'local'
}, {
xtype: 'button',
text: 'Copy first combo box store to another combo box store',
handler: function() {
var combo1Store = Ext.getCmp('comboBox1').getStore();
var combo2Store = Ext.getCmp('comboBox2').getStore();
Ext.each(combo1Store.data.items, function(item) {
combo2Store.add(item);
});
}
}, {
xtype: 'combobox',
id: 'comboBox2',
store: comboBox2,
displayField: 'text',
valueField: 'value',
queryMode: 'local'
}]
}).show();
});