六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 186|回复: 0

Ext工具栏菜单

[复制链接]

升级  13.33%

70

主题

70

主题

70

主题

举人

Rank: 3Rank: 3

积分
240
 楼主| 发表于 2013-2-8 00:20:49 | 显示全部楼层 |阅读模式
今天,帮群友解决了一个动态的 Ext工具栏菜单问题。
工具栏菜单数据是从后台读取的。效果如图:

这里将群友提供的后台数据简化一下,改成本地读取json数据格式;
代码如下:直接copy下面代码,保存成htm文件,导入ext包,可以运行;注意文件保存编码格式(非传输编码):utf-8
 
<html><head>    <meta http-equiv="Content-Type" content="text/html; charset=GBK">    <title>Ext Buttons</title>    <link rel="stylesheet" type="text/css" href="../resources/css/ext-all.css"/>    <script type="text/javascript" src="../adapter/ext/ext-base.js"></script>       <script type="text/javascript" src="../ext-all.js"></script><script> Ext.onReady(function(){        var bd = Ext.getBody();        var tb=new Ext.Toolbar();        //加载Menu数据源 简化的        var menuStr = '{root:[{"MenuItemId":1000,"PMenuItemId":0,"MenuItemName":"谐波监测点","MenuItemHref":"","ChildHmMenuList":[{"MenuItemId":10001,"PMenuItemId":1000,"MenuItemName":"用户谐波源管理","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10002,"PMenuItemId":1000,"MenuItemName":"检测终端维护","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10003,"PMenuItemId":1000,"MenuItemName":"监测点属性维护","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10004,"PMenuItemId":1000,"MenuItemName":"监测点拓扑维护","MenuItemHref":"","ChildHmMenuList":null}]},{"MenuItemId":1001,"PMenuItemId":0,"MenuItemName":"谐波分析","MenuItemHref":"","ChildHmMenuList":[{"MenuItemId":10011,"PMenuItemId":1001,"MenuItemName":"谐波电压分析","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10012,"PMenuItemId":1001,"MenuItemName":"谐波电流分析","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10013,"PMenuItemId":1001,"MenuItemName":"越限告警事项","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10014,"PMenuItemId":1001,"MenuItemName":"谐波数据报表","MenuItemHref":"","ChildHmMenuList":null}]},{"MenuItemId":1002,"PMenuItemId":0,"MenuItemName":"谐波高级分析","MenuItemHref":"","ChildHmMenuList":[{"MenuItemId":10021,"PMenuItemId":1002,"MenuItemName":"谐波趋势分析","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10022,"PMenuItemId":1002,"MenuItemName":"潮流计算","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10023,"PMenuItemId":1002,"MenuItemName":"谐波源定位","MenuItemHref":"","ChildHmMenuList":null}]},{"MenuItemId":1003,"PMenuItemId":0,"MenuItemName":"系统管理","MenuItemHref":"","ChildHmMenuList":[{"MenuItemId":10031,"PMenuItemId":1003,"MenuItemName":"组织结构管理","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10032,"PMenuItemId":1003,"MenuItemName":"权限管理","MenuItemHref":"","ChildHmMenuList":null},{"MenuItemId":10033,"PMenuItemId":1003,"MenuItemName":"谐波限值管理","MenuItemHref":"","ChildHmMenuList":null}]}]}';             var menuObj = eval("(" + menuStr + ")");        //alert(menuObj.root);        var panel=new Ext.Panel({                title:"wayfoon",                width:400,                height:200,                tbar:tb,                html:"<div>Paele里面的内容<br>wayfoon 南极光</div>",                renderTo: bd        });        //var tbItem;        var childmenu;        Ext.each(menuObj.root,function(item) {            childmenu = new Ext.menu.Menu();            Ext.each(item.ChildHmMenuList,function(childItem) {                childmenu.add(                {                    text: childItem.MenuItemName,      //菜单项的文本,                    href: childItem.MenuItemHref, //指定链接地址                    hrefTarget: "_blank"        //链接打开的发式,在新窗口打开                });            }); //end childitem            tb.add({ text: item.MenuItemName, menu: childmenu });         });        });</script></head><body ><div id =hello></div></body></html> 
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

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