网格布局

此示例演示了用于 DataTable 控制元素的多行布局网格。这不是一个实际的用例,而是一个说明性示例,用于展示各种选项的功能,以及它们如何影响布局。  div  特征用于显示一个文本框,指出元素出现的具体位置。

此处,前三行(红色轮廓)使用  topXStart  的位置在行的开头在表格上方放置元素(通常在容器的左侧)。第一行有一个元素,第二行有两个,第三行有三个。

第二组三行(绿色轮廓)使用相同的结构,但在容器的末尾(通常是右侧)使用  topXEnd  对此进行定位。

最后三行(蓝色轮廓)使用完整行  topX  。在此情况下,你会注意到,项目在可用空间中均匀分布(有一个项目居中)。

最后,仍适用于 DataTables 默认的  layout  属性,因此常规的表格控件会显示在表格周围。

姓名 职位 办公室 年龄 入职日期 薪水
Tiger Nixon 系统架构师 爱丁堡 61 2011-04-25 $320,800
Garrett Winters 会计师 东京 63 2011-07-25 $170,750
Ashton Cox 初级技术作者 旧金山 66 2009-01-12 $86,000
Cedric Kelly 高级 JavaScript 开发人员 爱丁堡 22 2012-03-29 $433,060
Airi Satou 会计师 东京 33 2008-11-28 $162,700
Brielle Williamson 集成专家 纽约 61 2012-12-02 $372,000
Herrod Chandler 销售助理 旧金山 59 2012-08-06 $137,500
Rhona Davidson 集成专家 东京 55 2010-10-14 $327,900
Colleen Hurst JavaScript 开发人员 旧金山 39 2009-09-15 $205,500
Sonya Frost 软件工程师 爱丁堡 23 2008-12-13 $103,600
Jena Gaines 办公室经理 伦敦 30 2008-12-19 $90,560
Quinn Flynn 支持负责人 爱丁堡 22 2013-03-03 $342,000
Charde Marshall 区域总监 旧金山 36 2008-10-16 $470,600
Haley Kennedy 高级营销设计师 伦敦 43 2012-12-18 $313,500
Tatyana Fitzpatrick 区域总监 伦敦 19 2010-03-17 $385,750
Michael Silva 营销设计师 伦敦 66 2012-11-27 $198,500
Paul Byrd 首席财务官 (CFO) 纽约 64 2010-06-09 $725,000
Gloria Little 系统管理员 纽约 59 2009-04-10 $237,500
Bradley Greer 软件工程师 伦敦 41 2012-10-13 $132,000
Dai Rios 人事主管 爱丁堡 35 2012-09-26 $217,500
Jenette Caldwell 开发主管 纽约 30 2011-09-03 $345,000
Yuri Berry 首席营销官 (CMO) 纽约 40 2009-06-25 $675,000
Caesar Vance 售前支持 纽约 21 2011-12-12 $106,450
Doris Wilder 销售助理 悉尼 23 2010-09-20 $85,600
Angelica Ramos 首席执行官 (CEO) 伦敦 47 2009-10-09 $1,200,000
Gavin Joyce 开发人员 爱丁堡 42 2010-12-22 $92,575
Jennifer Chang 区域总监 新加坡 28 2010-11-14 $357,650
Brenden Wagner 软件工程师 旧金山 28 2011-06-07 $206,850
Fiona Green 首席运营官 (COO) 旧金山 48 2010-03-11 $850,000
Shou Itou 区域营销 东京 20 2011-08-14 $163,000
Michelle House 集成专家 悉尼 37 2011-06-02 $95,400
Suki Burks 开发人员 伦敦 53 2009-10-22 $114,500
Prescott Bartlett 技术作者 伦敦 27 2011-05-07 $145,000
Gavin Cortez 团队负责人 旧金山 22 2008-10-26 $235,500
Martena Mccray 售后支持 爱丁堡 46 2011-03-09 $324,050
Unity Butler 营销设计师 旧金山 47 2009-12-09 $85,675
Howard Hatfield 办公室经理 旧金山 51 2008-12-16 $164,500
Hope Fuentes 秘书 旧金山 41 2010-02-12 $109,850
Vivian Harrell 财务主管 旧金山 62 2009-02-14 $452,500
Timothy Mooney 办公室经理 伦敦 37 2008-12-11 $136,200
杰克逊·布拉德肖 总监 纽约 65 2008-09-26 $645,750
奥利维亚·梁 支持工程师 新加坡 64 2011-02-03 $234,500
布鲁诺·纳什 软件工程师 伦敦 38 2011-05-03 $163,500
樱花山本 支持工程师 东京 37 2009-08-19 $139,575
索尔·沃尔顿 开发人员 纽约 61 2013-08-11 $98,540
芬 恩·卡马乔 支持工程师 旧金山 47 2009-07-07 $87,500
塞尔日·鲍德温 数据协调员 新加坡 64 2012-04-09 $138,575
泽内达·弗兰克 软件工程师 纽约 63 2010-01-04 $125,250
佐丽塔·塞拉诺 软件工程师 旧金山 56 2012-06-01 $115,000
詹妮弗·阿科斯塔 初级 Javascript 开发人员 爱丁堡 43 2013-02-01 $75,650
卡拉·史蒂文斯 销售助理 纽约 46 2011-12-06 $145,600
赫敏·巴特勒 区域总监 伦敦 47 2011-03-21 $356,250
莱尔·格里尔 系统管理员 伦敦 21 2009-02-27 $103,500
乔纳斯·亚历山大 开发人员 旧金山 30 2010-07-14 $86,500
沙德·德克尔 区域总监 爱丁堡 51 2008-11-13 $183,000
迈克尔·布鲁斯 JavaScript 开发人员 新加坡 29 2011-06-27 $183,000
唐娜·斯奈德 客户支持 纽约 27 2011-01-25 $112,000
姓名 职位 办公室 年龄 入职日期 薪水
  • Javascript
  • HTML
  • CSS
  • Ajax
  • 服务器端脚本
  • 注释

下面显示的 Javascript 用于初始化此示例中显示的表格

$('#example').DataTable({ layout: { top9Start: { div: { className: 'layout-start', text: 'top9Start' } }, top8Start: [ { div: { className: 'layout-start', text: 'top8Start A' } }, { div: { className: 'layout-start', text: 'top8Start B' } } ], top7Start: [ { div: { className: 'layout-start', text: 'top7Start A' } }, { div: { className: 'layout-start', text: 'top7Start B' } }, { div: { className: 'layout-start', text: 'top7Start C' } } ], top6End: { div: { className: 'layout-end', text: 'top6End' } }, top5End: [ { div: { className: 'layout-end', text: 'top5End A' } }, { div: { className: 'layout-end', text: 'top5End B' } } ], top4End: [ { div: { className: 'layout-end', text: 'top4End A' } }, { div: { className: 'layout-end', text: 'top4End B' } }, { div: { className: 'layout-end', text: 'top4End C' } } ], top3: { div: { className: 'layout-full', text: 'top3' } }, top2: [ { div: { className: 'layout-full', text: 'top2 A' } }, { div: { className: 'layout-full', text: 'top2 B' } } ], top1: [ { div: { className: 'layout-full', text: 'top1 A' } }, { div: { className: 'layout-full', text: 'top1 B' } }, { div: { className: 'layout-full', text: 'top1 C' } } ] } });
new DataTable('#example', { layout: { top9Start: { div: { className: 'layout-start', text: 'top9Start' } }, top8Start: [ { div: { className: 'layout-start', text: 'top8Start A' } }, { div: { className: 'layout-start', text: 'top8Start B' } } ], top7Start: [ { div: { className: 'layout-start', text: 'top7Start A' } }, { div: { className: 'layout-start', text: 'top7Start B' } }, { div: { className: 'layout-start', text: 'top7Start C' } } ], top6End: { div: { className: 'layout-end', text: 'top6End' } }, top5End: [ { div: { className: 'layout-end', text: 'top5End A' } }, { div: { className: 'layout-end', text: 'top5End B' } } ], top4End: [ { div: { className: 'layout-end', text: 'top4End A' } }, { div: { className: 'layout-end', text: 'top4End B' } }, { div: { className: 'layout-end', text: 'top4End C' } } ], top3: { div: { className: 'layout-full', text: 'top3' } }, top2: [ { div: { className: 'layout-full', text: 'top2 A' } }, { div: { className: 'layout-full', text: 'top2 B' } } ], top1: [ { div: { className: 'layout-full', text: 'top1 A' } }, { div: { className: 'layout-full', text: 'top1 B' } }, { div: { className: 'layout-full', text: 'top1 C' } } ] } });

除了上述代码外,还加载了以下 Javascript 库文件以用于此示例

    下面显示的是原始 HTML 表格元素,在未被 DataTables 增强之前

    此示例使用了一些额外的 CSS(如下所示), 超过从库文件中加载的内容,以便正确显示表格。下面显示了使用的额外 CSS

    div.layout-start { border: 1px solid #dc3545; border-radius: 3px; padding: 8px; } div.layout-end { border: 1px solid #198754; border-radius: 3px; padding: 8px; } div.layout-full { border: 1px solid #0d6efd; border-radius: 3px; padding: 8px; }

    加载了以下 CSS 库文件以用于此示例,以提供表格的样式

      此表格通过 Ajax 加载数据。下面显示了已加载的最新数据。随着加载任何附加数据,此数据将自动更新。

      下面显示用于执行此表的服务器端处理的脚本。请注意,这只是一个使用 PHP 的示例脚本。服务器端处理脚本可以使用任何语言编写,使用 DataTables 文档中描述的协议

      其他示例