tree.on("contextmenu",function(node,e){
e.preventDefault();
node.select();
//自定义右键菜单
var contextmenu = new Ext.menu.Menu({
id: 'theContextMenu',
items:[{
text: '右键菜单',
handler: function(e){
Ext.Msg.alert('操作',node.text);
}
},
{
text: '右键菜单2',
handler: function(){
Ext.Msg.show({
title: '操作2',
msg: node.text,
icon: Ext.Msg.INFO,
minWidth: 200,
buttons: Ext.Msg.OK
});
}
}]
});
contextmenu.showAt(e.getXY());
})
tree.getRootNode().expand(true);上面是创建右键菜单的代码,省略了树的构造。
现在实现的效果是,右键单击树节点,弹出对话框,输出节点名称。
但是,第二次或第三次右键单击树节点,树菜单会出现4个或6个,有时又不会。
是contextmenu对象的问题吗,在第二次点击时已经有值了。我试着清空,也还是不行。
怎么解决呢,谢谢大家。
我的qq:418210224.最近在学extjs,有extjs的问题可以一起探讨。
e.preventDefault();
node.select();
//自定义右键菜单
var contextmenu = new Ext.menu.Menu({
id: 'theContextMenu',
items:[{
text: '右键菜单',
handler: function(e){
Ext.Msg.alert('操作',node.text);
}
},
{
text: '右键菜单2',
handler: function(){
Ext.Msg.show({
title: '操作2',
msg: node.text,
icon: Ext.Msg.INFO,
minWidth: 200,
buttons: Ext.Msg.OK
});
}
}]
});
contextmenu.showAt(e.getXY());
})
tree.getRootNode().expand(true);上面是创建右键菜单的代码,省略了树的构造。
现在实现的效果是,右键单击树节点,弹出对话框,输出节点名称。
但是,第二次或第三次右键单击树节点,树菜单会出现4个或6个,有时又不会。
是contextmenu对象的问题吗,在第二次点击时已经有值了。我试着清空,也还是不行。
怎么解决呢,谢谢大家。
我的qq:418210224.最近在学extjs,有extjs的问题可以一起探讨。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货