前面在使用了简单的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,就可以从相应的指定页面载入。
以上已经测试成功。嘿嘿:)
相关推荐
在构建Web应用框架时,"Ext4+JSON+Servlet+Struts2+Ext.tree.Panel+Ext.tab.Panel"的组合提供了一种高效且功能丰富的解决方案。这个框架的核心组件包括Ext4 JavaScript库、JSON数据交换格式、Servlet或Struts2作为...
**2.11 Tab Panel (Ext.TabPanel)** - **xtype**: `tabpanel` - **功能描述**:Tab Panel 是一个包含多个选项卡的容器。 - **主要用途**:用于展示多个相关的数据集或功能模块,每个选项卡代表一个不同的页面。 **...
- **定义**: EXT是一个功能强大的JavaScript库,用于构建交互式Web应用程序。它提供了一系列工具和API,使得开发者能够轻松地创建复杂的用户界面。 - **目标用户**: 适用于对JavaScript有一定了解的开发者,特别是...
### EXT中文手册知识点总结 #### 1. EXT简介与安装 - **EXT**: 一种用于构建Web...以上知识点总结了EXT中文手册中的核心内容,覆盖了从安装到具体使用的各个方面,帮助开发者快速掌握EXT框架的基本用法和高级技巧。
除了这些基本布局,Ext还提供了许多其他高级控件,如窗口(Windows)、表格(GridPanels)等。例如,`GridPanel`是Ext中的一个关键组件,用于展示和操作数据表格。它支持分页、排序、过滤、行编辑等功能,适用于数据...
【标题】"ext tab"指的是EXTJS框架中的TabPanel组件,EXTJS是一个基于JavaScript的UI库,用于构建富客户端应用程序。TabPanel是EXTJS中一个非常重要的组件,它允许在一个容器内创建多个可切换的面板,每个面板就像一...
- **容器模型**:容器模型是用于组织和管理组件的高级概念,EXT2 中的容器模型更加完善。 - **布局**:EXT2 提供了更多布局选项,以适应不同场景下的布局需求。 - **Grid**:Grid 组件在 EXT2 中得到了进一步增强,...
《Ext JS 3.2 学习指南》是一本专为希望利用Ext JS框架构建动态、桌面风格用户界面的Web应用开发者设计的书籍。本书由Shea Frederick、Colin Ramsay、Steve 'Cutter' Blades 和 Nigel White四位作者共同编写,并于...
4. **性能优化**:分享一些提高EXT应用性能的最佳实践,比如按需加载资源、减少DOM操作等。 #### 六、社区资源与支持 1. **官方文档**:详细介绍了EXT的所有功能和用法,是学习过程中不可或缺的参考资料。 2. **...
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是一个高级的JavaScript库,用于构建功能丰富的Web应用程序。此框架允许开发者创建出外观华丽且交互性极强的RIA(Rich Internet Applications)。ExtJS的优势在于它能够独立于后端技术进行开发,这意味着无论是...
在实际应用中,`Ext.TabPanel`还有许多其他高级特性,例如: 1. **配置项**:可以设置多个配置项来定制`TabPanel`的行为,如`activeTab`用于指定初始活动的标签,`tabPosition`控制标签的位置(顶部、底部、左侧或...
TabPanel组件是EXT提供的一个高级组件,用于创建标签页式的用户界面。它允许用户通过点击不同的标签来切换显示不同的内容区域。 **Step1: 创建HTML骨架** 首先需要定义一个容器元素,作为TabPanel的容器。 **...
ExtJS Tab Panel是Ext JS库中的一个核心组件,它用于创建具有多个标签页的应用界面,每个标签页可以承载不同的内容区域。在Web开发中,Tab Panel常被用来组织和管理复杂的信息,使得用户能方便地在不同的视图之间...
- **事前准备**:在开始编写Ext应用之前需要做的准备工作,包括环境搭建、工具选择等。 - **程序架构**:指导如何规划Ext应用程序的结构,如模块划分、组件设计等。 - **示例代码分析**:通过具体的代码示例来...
#### 十三、EXT的布局(Layout) - **概念**: 布局管理器负责管理容器内的子项布局。 - **示例**: - 创建一个简单的布局示例。 #### 十四、Grid组件 - **数据定义**: - 定义数据模型。 - 设置列模型。 - **分页*...