首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

Extjs Tree右键菜单有关问题

2012-03-24 
Extjs Tree右键菜单问题最近使用ExtJs组建开发 其中使用了TreePanel组建 现在想实现右键菜单功能功能是可

Extjs Tree右键菜单问题
最近使用ExtJs组建开发 其中使用了TreePanel组建 现在想实现右键菜单功能
功能是可以实现的 但是有一些小BUG
代码如下:

JScript code
tree.on("contextmenu",function(node,e)        {            //node.select();            //alert(node.id);            e.preventDefault();             var treeMenu = new Ext.menu.Menu            ([                {xtype:"button",text:"展开",icon:"resources/images/default/tree/folder-open.gif",pressed:true,handler:function(){node.expand(true,false)}},                {xtype:"button",text:"收缩",icon:"resources/images/default/tree/folder.gif",pressed:true,handler:function(){node.collapse(true,true)}},                {xtype:"button",text:"添加",icon:"resources/images/default/dd/drop-add.gif",pressed:true,handler:AddChildNode},                {xtype:"button",text:"上移",icon:"resources/images/default/button/move-up.gif",pressed:true},                {xtype:"button",text:"下移",icon:"resources/images/default/button/move-down.gif",pressed:true},                {xtype:"button",text:"删除",icon:"resources/images/default/button/delete.gif",pressed:true}                                       ]);            //定位菜单的显示位置            treeMenu.showAt(e.getPoint());        });


情况是这样的: (单击左键后) 选中了一个节点 然后单击右键会出现右键菜单 这样操作没有问题
但是此时我在右键点击另一个节点 这时右键菜单操作的对象还是上一个已经选中的节点 
也就是说function中的参数node指的是当前根据左键点击选中的节点 怎样在右键单击节点时选中它呢??
如果想这样的话难道要对每一个节点单独写contextmenu事件吗?
  总之问题是:怎样确定是对哪个节点点击了右键??? 初用不熟悉 往有经验的朋友指点

[解决办法]
contextMenu: function(node, e) {
node.select();//选中右键点击的节点
}

热点排行