六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 133|回复: 0

extjs treepanel 右键菜单实现

[复制链接]

升级  54.67%

34

主题

34

主题

34

主题

秀才

Rank: 2

积分
132
 楼主| 发表于 2013-2-7 23:52:35 | 显示全部楼层 |阅读模式
 效果图:
1: 
2:
3:
1:html页面
<style type="text/css">      .leaf      {            background:url(../../script/extjs/resources/images/default/tree/drop-add.gif) !important;              }<!--节点右键菜单的叶子图片-->         </style><link rel="stylesheet" type="text/css" href="../../script/extjs/resources/css/ext-all.css" />    <script type="text/javascript" src="../../script/extjs/adapter/ext/ext-base.js"></script> <!-- ENDLIBS -->    <script type="text/javascript" src="../../script/extjs/ext-all.js"></script><!-- Common Styles for the examples --><link rel="stylesheet" type="text/css" href="../../script/extjs/shared/examples1.css" /></head><body><script type="text/javascript" src="../../script/extjs/shared/examples1.js"></script><!-- EXAMPLES --><script type="text/javascript" src="../../script/treePanel.js"></script><!-- EXAMPLES --><body>    <div id="container" >    </div>    </body>2:jsExt.onReady(function(){    var mytree = new Ext.tree.TreePanel({        renderTo:'container',        title: '图片配置',        height:600,        widht:900,        lines:true,        useArrows:true,        autoScroll:true,        animate:true,        //enableDD:true,        containerScroll: true,        resizable : true,                rootVisible: false,        frame: true,        root: {            nodeType: 'async'        },                // auto create TreeLoader       // dataUrl: 'treePanel.json',        loader:new Ext.tree.TreeLoader({                url:"ImageSortJson2?type=load",//服务器处理数据代码                listeners:{                    "loadexception":function(loader,node,response){                        //加载服务器数据,直到成功                                            }                }      }), listeners:{            "contextmenu":function(node,e){                               var nodemenu=new Ext.menu.Menu({                                      items:[{                                                                                    text:"添加结点",                                          iconCls:'leaf',//右键名称前的小图片                                          handler:function(){                                            Ext.MessageBox.prompt("请输入新项名称","",function(e,text){                                                if(e=="ok")                                                {                                                  Ext.Ajax.request({                                                      url: 'ImageSortJson2?type=add&gnbh='+node.id+'&value='+text,                                                      success:function(request)                                                      {                                                          mytree.root.reload();//数的重新加载                                                          mytree.root.expand(true,false);                                                      },                                                      failure:function(){                                                          alert("添加失败");                                                      }                                                  });                                                }                                                else                                                {                                                      alert("取消了");                                                }                                            })                                          }                                      },{                                          text:"编辑结点",                                          icon: '../../script/extjs/resources/images/default/tree/leaf.gif',                                           cls: 'x-btn-text-icon',                                          handler:function(){                                            Ext.MessageBox.prompt("请输入此项新名称","",function(e,text){                                                if(e=="ok")                                                {                                                  Ext.Ajax.request({                                                      url: 'ImageSortJson2?type=edit&gnbh='+node.id+"&value="+text,//传递需要的值,服务器会执行修改                                                      success:function(request)                                                      {                                                          mytree.root.reload();                                                          mytree.root.expand(true,false);                                                      },                                                      failure:function(){                                                          alert("编辑失败");                                                      }                                                  });                                                }                                                else                                                {                                                }                                            })                                          }                                      },{                                          text:"删除结点",                                           icon: '../../script/extjs/resources/images/default/tree/delete.jpg',                                           cls: 'x-btn-text-icon',                                         // iconCls:'deletess',                                          handler:function(){                                                                                    Ext.MessageBox.confirm("提示","是否确定删除?",function(e){                                             if(e=="yes")                                             {                                               Ext.Ajax.request({                                                      url: 'ImageSortJson2?type=delete&gnbh='+node.id,//根据id删除节点                                                      success:function(request)                                                      {                                                          mytree.root.reload();                                                          mytree.root.expand(true,false);                                                      },                                                      failure:function(){                                                          alert("删除失败");                                                      }                                            });                                             }                                                                                    });                                                                                      }                                      }]                                  });                                  nodemenu.showAt(e.getPoint());//menu的showAt,不要忘记                              }                                                                                              }  });     mytree.getRootNode().expand(true);});          3:json格式[{            id:'01',        text:'a',        children:[                                 { id:'0102',text:'b',leaf:true},                                  {id:'0103',text:'c',leaf:true},                                  {id:'0101',text:'d',leaf:true}                    ]         }]
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表