`

Ext应用三 -- 高级Tab

    博客分类:
  • Ext
阅读更多
转贴:http://www.blogjava.net/wuxufeng8080/archive/2008/01/09/173903.html
留个记录,方便学习,感谢源作者
前面在使用了简单的tab之后,在后来的应用中,又用到了高级tab。

需要用户点击一个链接之后,在panel中新增tab。这里有很多地方有疑问。

1、在var viewport = new Ext.Viewport()中定义tab是这样子的。
new Ext.TabPanel({
                id:tabs,
                region:'center',
                enableTabScroll:
true,
                defaults: 
{autoScroll:true},
                deferredRender:
false,
                activeTab:
0,
                items:[
{
                    contentEl:'center2',
                    title: 'Start',
                    autoScroll:
true
                }
]
            }
)
但是这样子导致这个TabPanel没有变量名,不能直接操作。
然后我试了通过viewport.add进行添加的方式,可能是方法使用错误,导致没有出来。
如果效果出来了。
后面还有问题,我怎么通过这个tab来显示一个页面呢。通过ajax tab来显示。在basic tab这个例子里有看到过,知识还没有研究。

下面是动态添加tab的方法
    function addTab(){
        tabs.add(
{
            title: 'New Tab ' 
+ (++index),
            iconCls: 'tabs',
            html: 'Tab Body ' 
+ (index) + '<br/><br/>'
                    
+ Ext.example.bogusMarkup,
            closable:
true
        }
).show();
    }
就通过TabPanel这个对象的变量来直接add。在add时候再动态载入页面内容。

var viewport = new Ext.Viewport({
layout: 'border',
items: [{
region: 'north',
html: 'menu'
}, {
id: 'center_panel',
region: 'center',
layout: 'card',
items: [
{id: 'first_center', html: 'first center'}
]

}]
});


var center = Ext.getCmp('center_panel');
center.remove('first_center');
center.add({
id: 'second_center',
html: 'second center'
});
center.getLayout().setActiveItem('second_center');
center.doLayout();

通过指定TabPanel id,然后通过Ext.getCmp('center_panel'),就可以获得这个panel的句柄,就可以对这个组件进行操作。layout在add/remove之后需要调用center.doLayout()方法,才能使后来新建的tab的生效。

3、ajax tab
function addFormTab(strScreen_ID, strScreenName){
  var tabs = Ext.getCmp('tabs');
  tabs.add({
   id: strScreen_ID,
   title: strScreenName,
   //html: 'second center',
   autoLoad: {url: './pages/web/business_frame.jsp', params: 'screen_ID=WEB.BU&screen_FK=' + strScreen_ID},
   closable:true
  });
  tabs.getLayout().setActiveItem(strScreen_ID);
  tabs.doLayout();
 }

 autoLoad: {url: './pages/web/business_frame.jsp', params: 'screen_ID=WEB.BU&screen_FK=' + strScreen_ID}

指定这个autoload,就可以从相应的指定页面载入。

以上已经测试成功。嘿嘿:)
分享到:
评论

相关推荐

    Ext4+JSON+Servlet+Tree构建Web应用框架

    在构建Web应用框架时,"Ext4+JSON+Servlet+Struts2+Ext.tree.Panel+Ext.tab.Panel"的组合提供了一种高效且功能丰富的解决方案。这个框架的核心组件包括Ext4 JavaScript库、JSON数据交换格式、Servlet或Struts2作为...

    Ext组件描述,各个组件含义

    **2.11 Tab Panel (Ext.TabPanel)** - **xtype**: `tabpanel` - **功能描述**:Tab Panel 是一个包含多个选项卡的容器。 - **主要用途**:用于展示多个相关的数据集或功能模块,每个选项卡代表一个不同的页面。 **...

    EXT最新使用手册

    - **定义**: EXT是一个功能强大的JavaScript库,用于构建交互式Web应用程序。它提供了一系列工具和API,使得开发者能够轻松地创建复杂的用户界面。 - **目标用户**: 适用于对JavaScript有一定了解的开发者,特别是...

    doc格式 ext EXT 中文手册

    ### EXT中文手册知识点总结 #### 1. EXT简介与安装 - **EXT**: 一种用于构建Web...以上知识点总结了EXT中文手册中的核心内容,覆盖了从安装到具体使用的各个方面,帮助开发者快速掌握EXT框架的基本用法和高级技巧。

    Ext教程.pptExt教程.pptExt教程.ppt

    除了这些基本布局,Ext还提供了许多其他高级控件,如窗口(Windows)、表格(GridPanels)等。例如,`GridPanel`是Ext中的一个关键组件,用于展示和操作数据表格。它支持分页、排序、过滤、行编辑等功能,适用于数据...

    ext tab

    【标题】"ext tab"指的是EXTJS框架中的TabPanel组件,EXTJS是一个基于JavaScript的UI库,用于构建富客户端应用程序。TabPanel是EXTJS中一个非常重要的组件,它允许在一个容器内创建多个可切换的面板,每个面板就像一...

    EXT 中文手册

    - **容器模型**:容器模型是用于组织和管理组件的高级概念,EXT2 中的容器模型更加完善。 - **布局**:EXT2 提供了更多布局选项,以适应不同场景下的布局需求。 - **Grid**:Grid 组件在 EXT2 中得到了进一步增强,...

    Ext JS 3.2 学习指南

    《Ext JS 3.2 学习指南》是一本专为希望利用Ext JS框架构建动态、桌面风格用户界面的Web应用开发者设计的书籍。本书由Shea Frederick、Colin Ramsay、Steve 'Cutter' Blades 和 Nigel White四位作者共同编写,并于...

    新版EXT教程

    4. **性能优化**:分享一些提高EXT应用性能的最佳实践,比如按需加载资源、减少DOM操作等。 #### 六、社区资源与支持 1. **官方文档**:详细介绍了EXT的所有功能和用法,是学习过程中不可或缺的参考资料。 2. **...

    Extjs4.2 根据不同的数值设置tabpanel行的背景颜色

    var tabPanel = Ext.create('Ext.tab.Panel', { width: 600, height: 300, items: [ { title: 'Value Table', layout: 'fit', items: Ext.create('MyApp.view.MyGrid') } ] }).render(Ext.getBody()); })...

    extjs培训2011-12-17

    ExtJS是一个高级的JavaScript库,用于构建功能丰富的Web应用程序。此框架允许开发者创建出外观华丽且交互性极强的RIA(Rich Internet Applications)。ExtJS的优势在于它能够独立于后端技术进行开发,这意味着无论是...

    ExtJS-3.4.0系列:Ext.TabPanel

    在实际应用中,`Ext.TabPanel`还有许多其他高级特性,例如: 1. **配置项**:可以设置多个配置项来定制`TabPanel`的行为,如`activeTab`用于指定初始活动的标签,`tabPosition`控制标签的位置(顶部、底部、左侧或...

    EXT中文手册 Grid Form

    TabPanel组件是EXT提供的一个高级组件,用于创建标签页式的用户界面。它允许用户通过点击不同的标签来切换显示不同的内容区域。 **Step1: 创建HTML骨架** 首先需要定义一个容器元素,作为TabPanel的容器。 **...

    extjs tab panel

    ExtJS Tab Panel是Ext JS库中的一个核心组件,它用于创建具有多个标签页的应用界面,每个标签页可以承载不同的内容区域。在Web开发中,Tab Panel常被用来组织和管理复杂的信息,使得用户能方便地在不同的视图之间...

    EXTJS经典教程

    - **事前准备**:在开始编写Ext应用之前需要做的准备工作,包括环境搭建、工具选择等。 - **程序架构**:指导如何规划Ext应用程序的结构,如模块划分、组件设计等。 - **示例代码分析**:通过具体的代码示例来...

    ExtJS中文手册

    #### 十三、EXT的布局(Layout) - **概念**: 布局管理器负责管理容器内的子项布局。 - **示例**: - 创建一个简单的布局示例。 #### 十四、Grid组件 - **数据定义**: - 定义数据模型。 - 设置列模型。 - **分页*...

Global site tag (gtag.js) - Google Analytics