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页缺少:

  • 相关阅读:
    第15章 在应用程序中使用虚拟内存(1)
    第14章 探索虚拟内存(2)
    第14章 探索虚拟内存(1)
    第13章 Windows内存体系结构
    第12章 纤程(Fiber)
    第11章 Windows线程池(3)_私有的线程池
    第11章 Windows线程池(2)_Win2008及以上的新线程池
    第11章 Windows线程池(1)_传统的Windows线程池
    第10章 同步设备I/O和异步设备I/O(4)_利用I/O完成端口实现Socket通信
    php+JQuery+Ajax简单实现页面异步刷新 (转)
  • 原文地址:https://www.cnblogs.com/zhaolijing910/p/2719697.html
Copyright © 2011-2022 走看看