2
我有一个标签面板只有几个选项卡。其中一个包含网格,网格包含3个文件: 1个编辑器类型为“textfield”的项目,以及2个编辑器类型为“combobox”的项目。ExtJS Combobox错误:无法读取未定义的属性“商店”
问题:我想根据以前的组合框过滤组合框。但由于某种原因,它只能在第一次使用。之后,商店返回未定义。
这里是我的代码:
items:[{
xtype: 'grid',
id:'schema',
border: false,
data:[],
columns:
[{
text : 'Size',
dataIndex: 'size',
id: "SizeDropdown",
width : 200,
sortable : true,
editor : {
xtype: 'combobox',
id:'SelectSize',
editable:true,
valueField: 'typeValue',
displayField: 'typeValue',
mode:'local',
lastQuery: '',
listeners:{
},
store: new Ext.data.SimpleStore({
fields: ['size', 'typeValue'],
data: [
['char', '12'],
['char', '30'],
['char', '31'],
['int', '250'],
['int', '500'],
['int', '1000'],
]
}),
allowBlank: false,
validator: function(input){
return true;
}
}
}],
listeners: {
beforeitemclick: function (eventThis, record, rowIndex, e) {
var SizeStore = Ext.getCmp('SizeDropdown').editor.store
SizeStore.clearFilter();
SizeStore.filter('size', record.data.type);
}
}
'record.data.type'回报 '字符' 或 'INT',根据前组合框和过滤工作好。但只是第一次。之后,它打破了这里:
var SizeStore = Ext.getCmp('SizeDropdown').editor.store
,并返回:
Cannot read property 'store' of undefined
我使用ExtJS的 “4.0.7”
您可以移动商店类之外。通常定义它。我认为在编辑器中定义商店并不是个好主意。你也可以在fiddle.sencha.com上用这种帮助重新创建你的问题会容易得多。 – pagep
@pagep谢谢,我在课堂外宣布了这家店,它工作。 :)如果您愿意,请将其写为答案,我会接受它。 – Nyagolova