使用4.0.6我有一個帶有兩個項目,刪除按鈕和視圖按鈕的動作列的網格面板。刪除按鈕被禁用,但在某些情況下需要啓用它(如果用戶是管理員)。所以我試圖在代碼中啓用它。extjs 4動態啓用動作列項目
這裏的視圖:
Ext.define('PP.view.person.List', {
extend: 'Ext.grid.Panel',
alias: 'widget.personlist',
title: 'Current people',
store: 'People',
columnLines: true,
initComponent: function() {
this.columns = [
{ header: 'Id', dataIndex: 'personId', flex: 1, sortable: true },
{ header: 'Title', dataIndex: 'title', flex: 1 },
{ header: 'Name', dataIndex: 'name', flex: 1},
{ xtype:'actioncolumn',
items:[
{icon:'cross.gif',disabled:true,handler:function(){alert('delete pressed');}},
{icon:'tick.gif',handler:function(){alert('view pressed');}}
]
}
];
this.callParent(arguments);
}
});
和我使用,使控制器功能:
enableDel: function() {
var view = Ext.widget('personlist');
view.down('actioncolumn').enableAction(0);
}
但我對開始
me.up('tablepanel').el.select
el的是未定義的線越來越ExtJS的enableAction函數內部錯誤。該列也未啓用。任何人都可以告訴我我做錯了什麼或發表一個有效的例子嗎?如果我指定
renderTo: Ext.getBody()
在視圖中,我不再收到錯誤,但列仍然無法啓用。所以我認爲它必須與渲染有關,但我對此很陌生,我不知道從哪裏開始。
看看您是否可以將您的代碼發佈到jsfiddle中。這裏是一個例子:http://jsfiddle.net/dbrin/8f8EC/ – dbrin 2012-02-20 04:04:16