ExtJS Combobox Error: Cannot read property 'store' of undefined
ExtJS Combobox Error: Cannot read property 'store' of undefined
我有一个只有几个选项卡的选项卡面板。其中之一包含网格,网格包含 3 个项目:
1 项编辑器类型为 "textfield",2 项编辑器类型为 "combobox".
问题:我想根据之前的combobox筛选combobox store。但由于某种原因,它只在第一次起作用。在那之后,商店 returns 未定义。
这是我的代码:
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' returns 'char' 或 ' int',取决于前面的组合框,过滤工作正常。但只是第一次。之后它在这里中断:
var SizeStore = Ext.getCmp('SizeDropdown').editor.store
和returns:
Cannot read property 'store' of undefined
我正在使用 ExtJs“4.0.7”
在 Tab class 之外声明商店就完成了这项工作。
这是我所做的:
var sizeDropdownStore = new Ext.data.SimpleStore({
fields: ['size', 'typeValue'],
data: [
['char', '12'],
['char', '30'],
['char', '31'],
['int', '250'],
['int', '500'],
['int', '1000'],
]
});
...{
xtype: 'combobox',
id:'SelectSize',
editable:true,
valueField: 'typeValue',
displayField: 'typeValue',
mode:'local',
listeners:{
},
store: sizeDropdownStore,
allowBlank: false
}...
我有一个只有几个选项卡的选项卡面板。其中之一包含网格,网格包含 3 个项目: 1 项编辑器类型为 "textfield",2 项编辑器类型为 "combobox".
问题:我想根据之前的combobox筛选combobox store。但由于某种原因,它只在第一次起作用。在那之后,商店 returns 未定义。
这是我的代码:
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' returns 'char' 或 ' int',取决于前面的组合框,过滤工作正常。但只是第一次。之后它在这里中断:
var SizeStore = Ext.getCmp('SizeDropdown').editor.store
和returns:
Cannot read property 'store' of undefined
我正在使用 ExtJs“4.0.7”
在 Tab class 之外声明商店就完成了这项工作。
这是我所做的:
var sizeDropdownStore = new Ext.data.SimpleStore({
fields: ['size', 'typeValue'],
data: [
['char', '12'],
['char', '30'],
['char', '31'],
['int', '250'],
['int', '500'],
['int', '1000'],
]
});
...{
xtype: 'combobox',
id:'SelectSize',
editable:true,
valueField: 'typeValue',
displayField: 'typeValue',
mode:'local',
listeners:{
},
store: sizeDropdownStore,
allowBlank: false
}...