zoukankan      html  css  js  c++  java
  • 动态添加tab(ext)

    Default页左边是菜单列表,右边是展示区域,点击左边列表节点,右边区域显示并且生成一个tab。

    方法:在左边菜单列表中添加js函数,addTab(id,title,url)。

    动态菜单:

    <ext:Panel ID="Panel6" runat="server" Collapsible="true" Layout="accordion" Region="West"
                    Split="true" Title="菜单列表" Width="175">
                <Content>   
                 <ext:AccordionLayout runat="server" ID="Accordion_Menu">   
            
                 </ext:AccordionLayout>
                </Content>
                </ext:Panel>  

    代码: mp = new MenuPanel();
                    mp.ID = string.Concat("MenuPanel_", drs[i]["menuID"].ToString());
                    mp.Title = drs[i]["menuName"].ToString();            
                     Accordion_Menu.Items.Add(mp);
              

     MenuItem mi = new MenuItem();
                    mi.ID = string.Concat("MenuItem_", drs[i]["menuID"].ToString());
                    mi.Text = drs[i]["menuName"].ToString();              
                    mi.HrefTarget = "CenterFrame";
                   // mi.Icon = (Icon)Enum.Parse(typeof(Icon), "book"); 
                    mi.IconUrl ="images/"+drs[i]["iconUrl"].ToString();//自定义图标
                   
                    mi.Listeners.Click.Handler = string.Format("addTab('MenuItem_{0}', '{1}', '{2}');", mi.ID, mi.Text, drs[i]["url"].ToString());
                    mp.Menu.Items.Add(mi);

    js代码:

    function addTab(id, title, url) {

              

                    var tab = TabPanel_Center.getComponent(id);

                    if (!tab) {

                        tab = TabPanel_Center.add(new Ext.Panel({

                            id: id,

                            title: title,

                            closable: true,//是否可以关闭

                            autoLoad: {

                                scripts: true,

                                url: url,

                                mode: 'iframe',

                                showMask: true,

                                maskMsg: String.format("正在加载{0}页面?...", title)

                            }

                        }));

     

    这样做只能显示二级,并且父节点下必须有子节点,否则会报错,说Default.aspx页缺少:

  • 相关阅读:
    WPF游戏摘记地图编辑器(1)
    图片和视频操作核心代码
    WPF游戏摘记地图编辑器(2)
    序言
    Asp.Net 请求处理机制
    C#正则表达式
    ActiveX控件打包成Cab实现浏览器自动下载安装
    ios数据存储
    ARC 学习
    Ray's Learn Cocos2d 笔记(一)
  • 原文地址:https://www.cnblogs.com/zhaolijing910/p/2719697.html
Copyright © 2011-2022 走看看