我有一个像这样的组合
items: {
xtype: 'combo',
id: 'combo',
queryMode: 'local',
displayField: 'name',
valueField: 'id',
store: Ext.create('Ext.data.Store', {
fields: ['id', 'name', 'mydata'],
data: [
{'id': '1', 'name': 'John Smith', 'mydata': ["3", "4"]},
{'id': '2', 'name': 'Albert Einstein', 'mydata': ["1", "2"]}
]
}),
listeners: {
select: function( combo, records, eOpts ) {
alert(records[0].get('mydata')); // records is undefined
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我使用时
var combo = Ext.getCmp('combo');
//combo.select("1");
combo.setValue("1");
combo.fireEvent('select');
Run Code Online (Sandbox Code Playgroud)
然后alert(records[0].get('mydata')); // records is undefined失败.如何解决这个问题谢谢.
这是我的代码http://jsfiddle.net/LZ8XU/
Kyl*_*ham 13
由于某种原因,Ext comboBox的select方法不会触发select事件.在我的问题中,我想要设置一个值,并手动触发select事件.如果是这样,还有几个领域需要通过; 特别是comboBox本身和选定的记录.
这是一个实现它的实现.
var combo = Ext.getCmp('combo');
var toselect = "Albert Einstein";
combo.select(toselect);
var record = combo.getStore().findRecord('name', toselect);
combo.fireEvent('select', combo, [record]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16794 次 |
| 最近记录: |