[b]树右键菜单[/b]
[img]http://www.miniui.com/docs/api/images/contextmenu_tree.gif[/img]
参考示例:[url=http://www.miniui.com/demo/tree/contextmenu.html]树右键菜单[/url]
[b]一:创建ContextMenu[/b]
<ul id="treeMenu" class="mini-contextmenu" onbeforeopen="onBeforeOpen">
<li iconCls="icon-move" οnclick="onMoveNode">移动节点</li>
<li class="separator"></li>
<li>
<span iconCls="icon-add">新增节点</span>
<li οnclick="onAddBefore">插入节点前</li>
<li οnclick="onAddAfter">插入节点后</li>
<li οnclick="onAddNode">插入子节点</li>
</li>
<li name="edit" iconCls="icon-edit" οnclick="onEditNode">编辑节点</li>
<li name="remove" iconCls="icon-remove" οnclick="onRemoveNode">删除节点</li>
</ul>
[b]二:设置contextmenu[/b]
<ul id="tree1" class="mini-tree" url="../data/tree.txt" style="width:200px;padding:5px;"
showTreeIcon="true" textField="text" idField="id"
contextMenu="#treeMenu">
</ul>
[b]三:监听beforeopen事件[/b]
function onBeforeOpen(e) {
var menu = e.sender;
var tree = mini.get("tree1");
var node = tree.getSelectedNode();
if (!node) {
e.cancel = true;
}
if (node && node.text == "Base") {
e.cancel = true;
//阻止浏览器默认右键菜单
e.htmlEvent.preventDefault();
return;
}
var editItem = mini.getbyName("edit", menu);
var removeItem = mini.getbyName("remove", menu);
editItem.show();
removeItem.enable();
if (node.id == "forms") {
editItem.hide();
}
if (node.id == "lists") {
removeItem.disable();
}
}
[img]http://www.miniui.com/docs/api/images/contextmenu_tree.gif[/img]
参考示例:[url=http://www.miniui.com/demo/tree/contextmenu.html]树右键菜单[/url]
[b]一:创建ContextMenu[/b]
<ul id="treeMenu" class="mini-contextmenu" onbeforeopen="onBeforeOpen">
<li iconCls="icon-move" οnclick="onMoveNode">移动节点</li>
<li class="separator"></li>
<li>
<span iconCls="icon-add">新增节点</span>
<li οnclick="onAddBefore">插入节点前</li>
<li οnclick="onAddAfter">插入节点后</li>
<li οnclick="onAddNode">插入子节点</li>
</li>
<li name="edit" iconCls="icon-edit" οnclick="onEditNode">编辑节点</li>
<li name="remove" iconCls="icon-remove" οnclick="onRemoveNode">删除节点</li>
</ul>
[b]二:设置contextmenu[/b]
<ul id="tree1" class="mini-tree" url="../data/tree.txt" style="width:200px;padding:5px;"
showTreeIcon="true" textField="text" idField="id"
contextMenu="#treeMenu">
</ul>
[b]三:监听beforeopen事件[/b]
function onBeforeOpen(e) {
var menu = e.sender;
var tree = mini.get("tree1");
var node = tree.getSelectedNode();
if (!node) {
e.cancel = true;
}
if (node && node.text == "Base") {
e.cancel = true;
//阻止浏览器默认右键菜单
e.htmlEvent.preventDefault();
return;
}
var editItem = mini.getbyName("edit", menu);
var removeItem = mini.getbyName("remove", menu);
editItem.show();
removeItem.enable();
if (node.id == "forms") {
editItem.hide();
}
if (node.id == "lists") {
removeItem.disable();
}
}