Ext TabPanel学习(2)-动态添加TabPanel标签

本文介绍如何使用ExtJS实现动态添加TabPanel,并通过实例展示了如何添加新的标签页及设置其为活动状态。同时,还提供了调整TabPanel宽度及启用滚动功能的方法。

1)、动态添加TabPanel标签
效果图

[img]http://dl2.iteye.com/upload/attachment/0087/3623/63f28aa2-fa06-3b5a-8dff-1163f1830325.png[/img]

js代码:
Ext.onReady(function(){
    Ext.QuickTips.init();
    var tabsDemo = new Ext.TabPanel({
        renderTo:Ext.getBody(),
        activeTab:0,
        height:700,
        frame:true,
        items:[{
            title:'autoLoad为html简单页面演示',
            html:'原来就有的标签页面',
            autoLoad:{url:'tab1.htm',scripts:true}
        }]
    });
    var index = 0;
    Ext.get("newTab").on("click",function(){
        tabsDemo.add({
            title:'new tab',
            id:'newtab'+index,
            html:"newtab标签页面",
            closable:true
        });
        tabsDemo.setActiveTab("newtab"+index);//设置新添加的标签为激活标签
        index++;
    });
})


html代码:

<body>
    <div>
        <a id="newTab" href="javascript:void(0)">添加新标签页</a>
    </div>
</body>

简要说明:
其实添加的话,只要add()方法就可以了,但是我们还要激活这个新的标签页,就必须setActiveTab(newtab的索引或id),
关键就是我们不好判断这个索引,所以只好设置个递增的全局变量index来给newtab取名,
这样我们也就能准确的获取新的不重复的newtab了,也就容易激活了

2)、对上面的例子进行稍微修改
效果图:

[img]http://dl2.iteye.com/upload/attachment/0087/3640/2691b582-5f5d-3cb5-8845-881136206466.png[/img]

js代码:

Ext.onReady(function(){
    Ext.QuickTips.init();
    var tabsDemo = new Ext.TabPanel({
        renderTo:Ext.getBody(),
//        resizeTabs:true,//宽度能自动变化,但是会影响标题的显示
        activeTab:0,
        height:200,
        enableTabScroll:true,//挤的时候能够滚动收缩
        width:200,
        frame:true,
        items:[{
            title:'页面演示',
            html:'原来就有的标签页面',
        }]
    });
    var index = 0;
    function addTabs(){
        tabsDemo.add({
            title:'new tab',
            id:'newtab'+index,
            html:"newtab标签页面"+index,
            closable:true
        });
        tabsDemo.setActiveTab("newtab"+index);//设置新添加的标签为激活标签
        index++;
    };
    //设置一个按钮(上面的是一个链接)
    new Ext.Button({
        text:'添加新标签页',
        handler:addTabs
    }).render(document.body,"addBtn");
})

html代码:
<body>
    <div>
        <div id="addBtn"></div>
    </div>
</body>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值