我正在使用 ExtJS 4(beta 3)并且我有一个 TreePanel,它是我的导航菜单。它是这样的:
- 工作
- 添加工作
- 列出所有工作
- ...
- ...
- ...
(这将在权限系统基础上进行,但这是另一回事)
在 ExtJS 3 上,当我单击“添加作业”时做一些事情就像添加一样简单
...
leaf:true,
listeners:{
click:function(n){
//my code...
}
}
...
到根子元素。
现在没那么简单了。我离得越近(在树面板上)
listeners:{
click : {
element : 'el',
fn : function(eve, elem, obj){
console.log(node);
console.log(elem);
console.log(obj);
}
}
}
所以,也许我只是一个菜鸟,也许我已经对 ExtJS 有强烈的仇恨,也许只是这个 beta 版本的一个问题,但是......
如何为树节点上的单击事件添加侦听器?(选择事件不会做我需要的)
感谢你们。
编辑:目前正在对此进行测试,但它不起作用。
... = Ext.create('Ext.tree.TreePanel', {
region : 'west',
collapsible : false,
title : 'ITMI',
width : 220,
margins : '5 5 5 5',
cmargins : '5 5 5 5',
hideHeaders : true,
useArrows : true,
rootVisible : false,
headers: [{
xtype : 'treeheader',
text : 'Nome',
flex : 1,
dataIndex: 'nome'
}],
store: store,
listeners:{
itemclick: function(n){
console.info(n);
}
}
...
编辑 2: itemclick 事件现在有效(在 EXJS 4 final 上),它仍然不能解决我的问题。当我调用每个树节点时,我想调用一个特定的函数。之前真的很简单。现在我想不通了。