非常教程

jQuery EasyUI 教程教程

jQuery EasyUI 布局插件 – Tabs 标签页/选项卡

jQuery EasyUI 布局插件 – Tabs 标签页/选项卡

jQuery EasyUI 布局插件 - Tabs 标签页/选项卡


jQuery EasyUI 布局插件 – Tabs 标签页/选项卡

jQuery EasyUI 插件

通过 $.fn.tabs.defaults 重写默认的 defaults。

The tabs display a collection of panel. It shows only one tab panel at a time. Each tab panel has the header title and some mini button tools, including close button and other customized buttons.

jQuery EasyUI 布局插件 – Tabs 标签页/选项卡

依赖

  • panel
  • linkbutton

用法

创建标签页(Tabs)

1、通过标记创建标签页(Tabs)

从标记创建标签页(Tabs)更容易,我们不需要写任何 JavaScript 代码。记住把 'easyui-tabs' class 添加到 <div> 标记。每个标签页面板(tab panel)通过子 <div> 标记被创建,其用法与面板(panel)一样。

<div id="tt" class="easyui-tabs" style="width:500px;height:250px;">
    <div title="Tab1" style="padding:20px;display:none;">
        tab1
    </div>
    <div title="Tab2" data-options="closable:true" style="overflow:auto;padding:20px;display:none;">
        tab2
    </div>
    <div title="Tab3" data-options="iconCls:'icon-reload',closable:true" style="padding:20px;display:none;">
        tab3
    </div>
</div>

2、编程创建标签页(Tabs)

现在我们编程创建标签页(Tabs),我们同时捕捉 'onSelect' 事件。

$('#tt').tabs({
    border:false,
    onSelect:function(title){
        alert(title+' is selected');
    }
});

添加新的标签页面板(tab panel)

通过迷你工具添加一个新的标签页面板(tab panel),迷你工具图标(8x8)放置在关闭按钮前。

// 添加一个新的标签页面板(tab panel)
$('#tt').tabs('add',{
    title:'New Tab',
    content:'Tab Body',
    closable:true,
    tools:[{
        iconCls:'icon-mini-refresh',
        handler:function(){
            alert('refresh');
        }
    }]
});

获取选中的标签页(Tab)

// 获取选中的标签页面板(tab panel)和它的标签页(tab)对象
var pp = $('#tt').tabs('getSelected');
var tab = pp.panel('options').tab; // 相应的标签页(tab)对象 

属性

名称 类型 描述 默认值
width number 标签页(Tabs)容器的宽度。 auto
height number 标签页(Tabs)容器的高度。 auto
plain boolean 当设置为 true 时,就不用背景容器图片来呈现 tab 条。 false
fit boolean 当设置为 true 时,就设置标签页(Tabs)容器的尺寸以适应它的父容器。 false
border boolean 当设置为 true 时,就显示标签页(Tabs)容器边框。 true
scrollIncrement number 每按一次 tab 滚动按钮,滚动的像素数。 100
scrollDuration number 每一个滚动动画应该持续的毫秒数。 400
tools array,selector 放置在头部的左侧或右侧的工具栏,可能的值:
1、数组,指示工具组,每个工具选项都和链接按钮(Linkbutton)一样。
2、选择器,指示包含工具的 <div>。

代码实例:
通过数组定义工具。
$('#tt').tabs({
    tools:[{
        iconCls:'icon-add',
        handler:function(){
            alert('add')
        }
    },{
        iconCls:'icon-save',
        handler:function(){
            alert('save')
        }
    }]
});
通过已有的 DOM 容器定义工具。
$('#tt').tabs({
    tools:'#tab-tools'
});
<div id="tab-tools">
    <a href="#" class="easyui-linkbutton" plain="true" iconCls="icon-add"></a>
    <a href="#" class="easyui-linkbutton" plain="true" iconCls="icon-save"></a>
</div>
null
toolPosition string 工具栏位置。可能的值:'left'、'right'。该属性自版本 1.3.2 起可用。 right
tabPosition string 标签页(tab)位置。可能的值:'top'、'bottom'、'left'、'right'。该属性自版本 1.3.2 起可用。 top
headerWidth number 标签页(tab)头部宽度,只有当 tabPosition 设置为 'left' 或 'right' 时才有效。该属性自版本 1.3.2 起可用。 150
tabWidth number tab 条的宽度。该属性自版本 1.3.4 起可用。 auto
tabHeight number tab 条的高度。该属性自版本 1.3.4 起可用。 27
selected number 初始化选定的标签页索引。该属性自版本 1.3.5 起可用。 0
showHeader boolean 当设置为 true 时,显示标签页(tab)头部。该属性自版本 1.3.5 起可用。 true

事件

名称 参数 描述
onLoad panel 当一个 ajax 标签页面板(tab panel)完成加载远程数据时触发。
onSelect title,index 当用户选择一个标签页面板(tab panel)时触发。
onUnselect title,index 当用户未选择一个标签页面板(tab panel)时触发。该事件自版本 1.3.5 起可用。
onBeforeClose title,index 当一个标签页面板(tab panel)被关闭前触发,返回 false 就取消关闭动作。下面的实例演示如何在关闭标签页面板(tab panel)前显示确认对话框。
$('#tt').tabs({
  onBeforeClose: function(title){
    return confirm('Are you sure you want to close ' + title);
  }
});
// using the async confirm dialog
$('#tt').tabs({
  onBeforeClose: function(title,index){
    var target = this;
    $.messager.confirm('Confirm','Are you sure you want to close '+title,function(r){
        if (r){
            var opts = $(target).tabs('options');
            var bc = opts.onBeforeClose;
            opts.onBeforeClose = function(){};  // allowed to close now
            $(target).tabs('close',index);
            opts.onBeforeClose = bc;  // restore the event function
        }
    });
    return false;    // prevent from closing
  }
});
onClose title,index 当用户关闭一个标签页面板(tab panel)时触发。
onAdd title,index 当一个新的标签页面板(tab panel)被添加时触发。
onUpdate title,index 当一个标签页面板(tab panel)被更新时触发。
onContextMenu e, title,index 当一个标签页面板(tab panel)被右键点击时触发。

方法

名称 参数 描述
options none 返回标签页(tabs)选项(options)。
tabs none 返回全部的标签页面板(tab panel)。
resize none 调整标签页(tabs)容器的尺寸并做布局。
add options 添加一个新的标签页面板(tab panel),options 参数是一个配置对象,更多详细信息请参见标签页面板(tab panel)属性。
当添加一个新的标签页面板(tab panel)时,它将被选中。
如需添加一个未选中的标签页面板(tab panel),请记得设置 'selected' 属性为 false。
// add a unselected tab panel
$('#tt').tabs('add',{
    title: 'new tab',
    selected: false
    //...
});
close which 关闭一个标签页面板(tab panel),'which' 参数可以是要被关闭的标签页面板(tab panel)的标题(title)或索引(index)。
getTab which 获取指定的标签页面板(tab panel),'which' 参数可以是标签页面板(tab panel)的标题(title)或索引(index)。
getTabIndex tab 获取指定的标签页面板(tab panel)索引。
getSelected none 获取选中的标签页面板(tab panel)。下面的实例演示如何获取选中的标签页面板(tab panel)的索引。
var tab = $('#tt').tabs('getSelected');
var index = $('#tt').tabs('getTabIndex',tab);
alert(index);
select which 选择一个标签页面板(tab panel),'which' 参数可以是标签页面板(tab panel)的标题(title)或索引(index)。
unselect which 选择一个标签页面板(tab panel),'which' 参数可以是标签页面板(tab panel)的标题(title)或索引(index)。该方法自版本 1.3.5 起可用。
showHeader none 显示标签页(tabs)头部。该方法自版本 1.3.5 起可用。
hideHeader none 隐藏标签页(tabs)头部。该方法自版本 1.3.5 起可用。
exists which 指示指定的面板是否已存在,'which' 参数可以是标签页面板(tab panel)的标题(title)或索引(index)。
update param 更新指定的标签页面板(tab panel),param 参数包含两个属性:
tab:被更新的标签页面板(tab panel)。
options:面板(panel)的选项(options)。

代码实例:
// update the selected panel with new title and content
var tab = $('#tt').tabs('getSelected');  // get selected panel
$('#tt').tabs('update', {
    tab: tab,
    options: {
        title: 'New Title',
        href: 'get_content.php'  // the new content URL
    }
});

// call 'refresh' method for tab panel to update its content
var tab = $('#tt').tabs('getSelected');  // get selected panel
tab.panel('refresh', 'get_content.php');
enableTab which 启用指定的标签页面板(tab panel),'which' 参数可以是标签页面板(tab panel)的标题(title)或索引(index)。该方法自版本 1.3 起可用。

代码实例:
$('#tt').tabs('enableTab', 1);    // enable the second tab panel
$('#tt').tabs('enableTab', 'Tab2');    enable the tab panel that has 'Tab2' title
disableTab which 禁用指定的标签页面板(tab panel),'which' 参数可以是标签页面板(tab panel)的标题(title)或索引(index)。该方法自版本 1.3 起可用。

代码实例:
$('#tt').tabs('disableTab', 1);    // disable the second tab panel.
scrollBy deltaX 通过指定的像素数滚动标签页(tab)头部,负值表示滚动到右边,正值表示滚动到左边。该方法自版本 1.3.2 起可用。

代码实例:
// scroll the tab header to left
$('#tt').tabs('scroll', 10);

标签页面板(Tab Panel)

标签页面板(tab panel)属性被定义在面板(panel)组件里,下面是一些常用的属性。

名称 类型 描述 默认值
id string 标签页面板(tab panel)的 id 属性。 null
title string 标签页面板(tab panel)的标题文字。
content string 标签页面板(tab panel)的内容。
href string 加载远程内容来填充标签页面板(tab panel)的 URL。 null
cache boolean 当设置为 true 时,在设定了有效的 href 特性时缓存这个标签页面板(tab panel)。 true
iconCls string 显示在标签页面板(tab panel)标题上的图标的 CSS class。 null
width number 标签页面板(tab panel)的宽度。 auto
height number 标签页面板(tab panel)的高度。 auto
collapsible boolean 当设置为 true 时,允许标签页面板(tab panel)可折叠。 false

一些附加的属性。

名称 类型 描述 默认值
closable boolean 当设置为 true 时,标签页面板(tab panel)将显示一个关闭按钮,点击它就能关闭这个标签页面板(tab panel)。 false
selected boolean 当设置为 true 时,标签页面板(tab panel)将被选中。 false

jQuery EasyUI 布局插件 – Tabs 标签页/选项卡

jQuery EasyUI 插件
jQuery EasyUI 布局插件 – Tabs 标签页/选项卡
jQuery EasyUI 教程

jQuery EasyUI 是一个基于 jQuery 的框架,集成了各种用户界面插件。jQuery EasyUI 框架提供了创建网页所需的一切,帮助您轻松建立站点。

jQuery EasyUI 教程目录

1.jQuery EasyUI 教程
2.jQuery EasyUI 基础插件 – Draggable 可拖拽
3.jQuery EasyUI 基础插件 – Easyloader 加载器
4.jQuery EasyUI 基础插件 – Parser 解析器
5.jQuery EasyUI 布局插件 – Tabs 标签页/选项卡
6.jQuery EasyUI 布局插件 – Panel 面板
7.jQuery EasyUI 基础插件 – Tooltip 提示框
8.jQuery EasyUI 基础插件 – Progressbar 进度条
9.jQuery EasyUI 基础插件 – Searchbox 搜索框
10.jQuery EasyUI 基础插件 – Pagination 分页
11.jQuery EasyUI 基础插件 – Resizable 可调整尺寸
12.jQuery EasyUI 基础插件 – Droppable 可释放
13.jQuery EasyUI 菜单与按钮插件 – Linkbutton 链接按钮
14.jQuery EasyUI 菜单与按钮插件 – Menu 菜单
15.jQuery EasyUI 布局插件 – Layout 布局
16.jQuery EasyUI 布局插件 – Accordion 折叠面板
17.jQuery EasyUI 菜单与按钮插件 – Splitbutton 分割按钮
18.jQuery EasyUI 菜单与按钮插件 – Menubutton 菜单按钮
19.jQuery EasyUI 表单插件 – Datebox 日期框
20.jQuery EasyUI 表单插件 – Numberbox 数字框
21.jQuery EasyUI 表单插件 – Combogrid 组合网格
22.jQuery EasyUI 表单插件 – Combotree 组合树
23.jQuery EasyUI 表单插件 – Combobox 组合框
24.jQuery EasyUI 表单插件 – Combo 组合
25.jQuery EasyUI 表单插件 – Validatebox 验证框
26.jQuery EasyUI 表单插件 – Form 表单
27.jQuery EasyUI 数据网格与树插件 – Datagrid 数据网格
28.jQuery EasyUI 窗口插件 – Messager 消息框
29.jQuery EasyUI 窗口插件 – Dialog 对话框
30.jQuery EasyUI 窗口插件 – Window 窗口
31.jQuery EasyUI 表单插件 – Slider 滑块
32.jQuery EasyUI 表单插件 – Timespinner 时间微调器
33.jQuery EasyUI 表单插件 – Numberspinner 数值微调器
34.jQuery EasyUI 表单插件 – Spinner 微调器
35.jQuery EasyUI 表单插件 – Calendar 日历
36.jQuery EasyUI 表单插件 – Datetimebox 日期时间框
37.jQuery EasyUI 扩展 – 可编辑的树
38.jQuery EasyUI 扩展 – 可编辑的数据网格
39.jQuery EasyUI 扩展 – 数据网格视图
40.jQuery EasyUI 扩展 – Portal
41.jQuery EasyUI 插件
42.jQuery EasyUI 数据网格与树插件 – Treegrid 树形网格
43.jQuery EasyUI 数据网格与树插件 – Tree 树
44.jQuery EasyUI 数据网格与树插件 – Propertygrid 属性网格
45.jQuery EasyUI 扩展 – RTL 支持
46.jQuery EasyUI 扩展 – DWR 加载器
47.jQuery EasyUI 扩展 – 主题
48.jQuery EasyUI 扩展 – 树形网格行拖放
49.jQuery EasyUI 扩展 – 数据网格行拖放
50.jQuery EasyUI 扩展 – 数据网格行过滤
51.jQuery EasyUI 扩展 – Ribbon