554 lines
29 KiB
Plaintext
554 lines
29 KiB
Plaintext
- var datatable = true;
|
|
- var page_datatable = true;
|
|
- var theme_customizer = true;
|
|
- var tooltip = true;
|
|
|
|
doctype html
|
|
html(lang='en')
|
|
include ../../components/header-files
|
|
body
|
|
include ../../components/loader
|
|
// page-wrapper Start
|
|
#pageWrapper.page-wrapper
|
|
include ../../components/header
|
|
// Page Body Start
|
|
.page-body-wrapper.horizontal-menu
|
|
include ../../components/sidebar
|
|
.page-body
|
|
.container-fluid
|
|
.page-header
|
|
.row
|
|
.col-sm-6
|
|
h3
|
|
| DATA Source DataTables
|
|
ol.breadcrumb
|
|
li.breadcrumb-item
|
|
a(href='index.html')
|
|
| Home
|
|
li.breadcrumb-item Tables
|
|
li.breadcrumb-item Data Tables
|
|
li.breadcrumb-item.active Data Sources
|
|
.col-sm-6
|
|
include ../../components/bookmark
|
|
// Container-fluid starts
|
|
.container-fluid
|
|
.row
|
|
// HTML (DOM) sourced data Starts
|
|
.col-sm-12
|
|
.card
|
|
.card-header
|
|
h5 HTML (DOM) sourced data
|
|
span
|
|
| The foundation for DataTables is progressive enhancement, so it is very adept at reading table information directly from the DOM. This example shows how easy it is to add searching, ordering and paging to your HTML table by simply running DataTables on it.
|
|
.card-body
|
|
.table-responsive
|
|
table#data-source-1.display(style='width:100%')
|
|
thead
|
|
tr
|
|
th Name
|
|
th Position
|
|
th Office
|
|
th Age
|
|
th Start date
|
|
th Salary
|
|
tbody
|
|
tr
|
|
td Tiger Nixon
|
|
td System Architect
|
|
td Edinburgh
|
|
td 61
|
|
td 2011/04/25
|
|
td $320,800
|
|
tr
|
|
td Garrett Winters
|
|
td Accountant
|
|
td Tokyo
|
|
td 63
|
|
td 2011/07/25
|
|
td $170,750
|
|
tr
|
|
td Ashton Cox
|
|
td Junior Technical Author
|
|
td San Francisco
|
|
td 66
|
|
td 2009/01/12
|
|
td $86,000
|
|
tr
|
|
td Cedric Kelly
|
|
td Senior Javascript Developer
|
|
td Edinburgh
|
|
td 22
|
|
td 2012/03/29
|
|
td $433,060
|
|
tr
|
|
td Airi Satou
|
|
td Accountant
|
|
td Tokyo
|
|
td 33
|
|
td 2008/11/28
|
|
td $162,700
|
|
tr
|
|
td Brielle Williamson
|
|
td Integration Specialist
|
|
td New York
|
|
td 61
|
|
td 2012/12/02
|
|
td $372,000
|
|
tr
|
|
td Herrod Chandler
|
|
td Sales Assistant
|
|
td San Francisco
|
|
td 59
|
|
td 2012/08/06
|
|
td $137,500
|
|
tr
|
|
td Rhona Davidson
|
|
td Integration Specialist
|
|
td Tokyo
|
|
td 55
|
|
td 2010/10/14
|
|
td $327,900
|
|
tr
|
|
td Colleen Hurst
|
|
td Javascript Developer
|
|
td San Francisco
|
|
td 39
|
|
td 2009/09/15
|
|
td $205,500
|
|
tr
|
|
td Sonya Frost
|
|
td Software Engineer
|
|
td Edinburgh
|
|
td 23
|
|
td 2008/12/13
|
|
td $103,600
|
|
tr
|
|
td Jena Gaines
|
|
td Office Manager
|
|
td London
|
|
td 30
|
|
td 2008/12/19
|
|
td $90,560
|
|
tr
|
|
td Quinn Flynn
|
|
td Support Lead
|
|
td Edinburgh
|
|
td 22
|
|
td 2013/03/03
|
|
td $342,000
|
|
tr
|
|
td Charde Marshall
|
|
td Regional Director
|
|
td San Francisco
|
|
td 36
|
|
td 2008/10/16
|
|
td $470,600
|
|
tr
|
|
td Haley Kennedy
|
|
td Senior Marketing Designer
|
|
td London
|
|
td 43
|
|
td 2012/12/18
|
|
td $313,500
|
|
tr
|
|
td Tatyana Fitzpatrick
|
|
td Regional Director
|
|
td London
|
|
td 19
|
|
td 2010/03/17
|
|
td $385,750
|
|
tr
|
|
td Michael Silva
|
|
td Marketing Designer
|
|
td London
|
|
td 66
|
|
td 2012/11/27
|
|
td $198,500
|
|
tr
|
|
td Paul Byrd
|
|
td Chief Financial Officer (CFO)
|
|
td New York
|
|
td 64
|
|
td 2010/06/09
|
|
td $725,000
|
|
tr
|
|
td Gloria Little
|
|
td Systems Administrator
|
|
td New York
|
|
td 59
|
|
td 2009/04/10
|
|
td $237,500
|
|
tr
|
|
td Bradley Greer
|
|
td Software Engineer
|
|
td London
|
|
td 41
|
|
td 2012/10/13
|
|
td $132,000
|
|
tr
|
|
td Dai Rios
|
|
td Personnel Lead
|
|
td Edinburgh
|
|
td 35
|
|
td 2012/09/26
|
|
td $217,500
|
|
tr
|
|
td Jenette Caldwell
|
|
td Development Lead
|
|
td New York
|
|
td 30
|
|
td 2011/09/03
|
|
td $345,000
|
|
tr
|
|
td Yuri Berry
|
|
td Chief Marketing Officer (CMO)
|
|
td New York
|
|
td 40
|
|
td 2009/06/25
|
|
td $675,000
|
|
tr
|
|
td Caesar Vance
|
|
td Pre-Sales Support
|
|
td New York
|
|
td 21
|
|
td 2011/12/12
|
|
td $106,450
|
|
tr
|
|
td Doris Wilder
|
|
td Sales Assistant
|
|
td Sidney
|
|
td 23
|
|
td 2010/09/20
|
|
td $85,600
|
|
tr
|
|
td Angelica Ramos
|
|
td Chief Executive Officer (CEO)
|
|
td London
|
|
td 47
|
|
td 2009/10/09
|
|
td $1,200,000
|
|
tr
|
|
td Gavin Joyce
|
|
td Developer
|
|
td Edinburgh
|
|
td 42
|
|
td 2010/12/22
|
|
td $92,575
|
|
tr
|
|
td Jennifer Chang
|
|
td Regional Director
|
|
td Singapore
|
|
td 28
|
|
td 2010/11/14
|
|
td $357,650
|
|
tr
|
|
td Brenden Wagner
|
|
td Software Engineer
|
|
td San Francisco
|
|
td 28
|
|
td 2011/06/07
|
|
td $206,850
|
|
tr
|
|
td Fiona Green
|
|
td Chief Operating Officer (COO)
|
|
td San Francisco
|
|
td 48
|
|
td 2010/03/11
|
|
td $850,000
|
|
tr
|
|
td Shou Itou
|
|
td Regional Marketing
|
|
td Tokyo
|
|
td 20
|
|
td 2011/08/14
|
|
td $163,000
|
|
tr
|
|
td Michelle House
|
|
td Integration Specialist
|
|
td Sidney
|
|
td 37
|
|
td 2011/06/02
|
|
td $95,400
|
|
tr
|
|
td Suki Burks
|
|
td Developer
|
|
td London
|
|
td 53
|
|
td 2009/10/22
|
|
td $114,500
|
|
tr
|
|
td Prescott Bartlett
|
|
td Technical Author
|
|
td London
|
|
td 27
|
|
td 2011/05/07
|
|
td $145,000
|
|
tr
|
|
td Gavin Cortez
|
|
td Team Leader
|
|
td San Francisco
|
|
td 22
|
|
td 2008/10/26
|
|
td $235,500
|
|
tr
|
|
td Martena Mccray
|
|
td Post-Sales support
|
|
td Edinburgh
|
|
td 46
|
|
td 2011/03/09
|
|
td $324,050
|
|
tr
|
|
td Unity Butler
|
|
td Marketing Designer
|
|
td San Francisco
|
|
td 47
|
|
td 2009/12/09
|
|
td $85,675
|
|
tr
|
|
td Howard Hatfield
|
|
td Office Manager
|
|
td San Francisco
|
|
td 51
|
|
td 2008/12/16
|
|
td $164,500
|
|
tr
|
|
td Hope Fuentes
|
|
td Secretary
|
|
td San Francisco
|
|
td 41
|
|
td 2010/02/12
|
|
td $109,850
|
|
tr
|
|
td Vivian Harrell
|
|
td Financial Controller
|
|
td San Francisco
|
|
td 62
|
|
td 2009/02/14
|
|
td $452,500
|
|
tr
|
|
td Timothy Mooney
|
|
td Office Manager
|
|
td London
|
|
td 37
|
|
td 2008/12/11
|
|
td $136,200
|
|
tr
|
|
td Jackson Bradshaw
|
|
td Director
|
|
td New York
|
|
td 65
|
|
td 2008/09/26
|
|
td $645,750
|
|
tr
|
|
td Olivia Liang
|
|
td Support Engineer
|
|
td Singapore
|
|
td 64
|
|
td 2011/02/03
|
|
td $234,500
|
|
tr
|
|
td Bruno Nash
|
|
td Software Engineer
|
|
td London
|
|
td 38
|
|
td 2011/05/03
|
|
td $163,500
|
|
tr
|
|
td Sakura Yamamoto
|
|
td Support Engineer
|
|
td Tokyo
|
|
td 37
|
|
td 2009/08/19
|
|
td $139,575
|
|
tr
|
|
td Thor Walton
|
|
td Developer
|
|
td New York
|
|
td 61
|
|
td 2013/08/11
|
|
td $98,540
|
|
tr
|
|
td Finn Camacho
|
|
td Support Engineer
|
|
td San Francisco
|
|
td 47
|
|
td 2009/07/07
|
|
td $87,500
|
|
tr
|
|
td Serge Baldwin
|
|
td Data Coordinator
|
|
td Singapore
|
|
td 64
|
|
td 2012/04/09
|
|
td $138,575
|
|
tr
|
|
td Zenaida Frank
|
|
td Software Engineer
|
|
td New York
|
|
td 63
|
|
td 2010/01/04
|
|
td $125,250
|
|
tr
|
|
td Zorita Serrano
|
|
td Software Engineer
|
|
td San Francisco
|
|
td 56
|
|
td 2012/06/01
|
|
td $115,000
|
|
tr
|
|
td Jennifer Acosta
|
|
td Junior Javascript Developer
|
|
td Edinburgh
|
|
td 43
|
|
td 2013/02/01
|
|
td $75,650
|
|
tr
|
|
td Cara Stevens
|
|
td Sales Assistant
|
|
td New York
|
|
td 46
|
|
td 2011/12/06
|
|
td $145,600
|
|
tr
|
|
td Hermione Butler
|
|
td Regional Director
|
|
td London
|
|
td 47
|
|
td 2011/03/21
|
|
td $356,250
|
|
tr
|
|
td Lael Greer
|
|
td Systems Administrator
|
|
td London
|
|
td 21
|
|
td 2009/02/27
|
|
td $103,500
|
|
tr
|
|
td Jonas Alexander
|
|
td Developer
|
|
td San Francisco
|
|
td 30
|
|
td 2010/07/14
|
|
td $86,500
|
|
tr
|
|
td Shad Decker
|
|
td Regional Director
|
|
td Edinburgh
|
|
td 51
|
|
td 2008/11/13
|
|
td $183,000
|
|
tr
|
|
td Michael Bruce
|
|
td Javascript Developer
|
|
td Singapore
|
|
td 29
|
|
td 2011/06/27
|
|
td $183,000
|
|
tr
|
|
td Donna Snider
|
|
td Customer Support
|
|
td New York
|
|
td 27
|
|
td 2011/01/25
|
|
td $112,000
|
|
tfoot
|
|
tr
|
|
th Name
|
|
th Position
|
|
th Office
|
|
th Age
|
|
th Start date
|
|
th Salary
|
|
// HTML (DOM) sourced data Ends
|
|
// Ajax sourced data Starts
|
|
.col-sm-12
|
|
.card
|
|
.card-header
|
|
h5 Ajax sourced data
|
|
span
|
|
| DataTables has the ability to read data from virtually any JSON data source that can be obtained by Ajax. This can be done, in its most simple form, by setting the
|
|
code ajax:option
|
|
| option to the address of the JSON data source.
|
|
.card-body
|
|
.table-responsive
|
|
table#data-source-2.display(style='width:100%')
|
|
thead
|
|
tr
|
|
th Name
|
|
th Position
|
|
th Office
|
|
th Extn.
|
|
th Start date
|
|
th Salary
|
|
tfoot
|
|
tr
|
|
th Name
|
|
th Position
|
|
th Office
|
|
th Extn.
|
|
th Start date
|
|
th Salary
|
|
// Ajax sourced data Ends
|
|
// Javascript sourced data Starts
|
|
.col-sm-12
|
|
.card
|
|
.card-header
|
|
h5 Javascript sourced data
|
|
span
|
|
| At times you will wish to be able to create a table from dynamic information passed directly to DataTables, rather than having it read from the document.
|
|
| This is achieved using the
|
|
code.option(title='DataTables initialisation option') data
|
|
| option in the initialisation object, passing in an array of data to be used (like all other DataTables handled data, this can be arrays or objects using the
|
|
code.option(title='DataTables initialisation option') columns.data
|
|
| option).
|
|
span
|
|
| A
|
|
code.tag(title='HTML tag') table
|
|
| must be available on the page for DataTables to use. This examples shows an empty
|
|
code.tag(title='HTML tag') table
|
|
| element being initialising as a DataTable with a set of data from a Javascript array. The columns in the table are dynamically created
|
|
| based on the
|
|
code.option(title='DataTables initialisation option') columns.title
|
|
| configuration option.
|
|
.card-body
|
|
.table-responsive
|
|
table#data-source-3.display.w-100
|
|
// Javascript sourced data Ends
|
|
// Server-side processing Starts
|
|
.col-sm-12
|
|
.card
|
|
.card-header
|
|
h5 Server-side processing
|
|
span
|
|
| There are many ways to get your data into DataTables, and if you are working with seriously large databases, you might want to consider using the server-side options that DataTables provides. With server-side processing enabled, all paging, searching, ordering actions that DataTables performs are handed off to a server where an SQL engine (or similar) can perform these actions on the large data set (after all, that's what the database engine is designed for!). As such, each draw of the table will result in a new Ajax request being made to get the required data.
|
|
span
|
|
| Server-side processing is enabled by setting the
|
|
code.option(title='DataTables initialisation option') serverSide:option
|
|
| option to
|
|
code true
|
|
| and providing an Ajax data source through the
|
|
code.option(title='DataTables initialisation option') ajax:option
|
|
| option.
|
|
.card-body
|
|
.table-responsive
|
|
table#data-source-4.display(style='width:100%')
|
|
thead
|
|
tr
|
|
th First name
|
|
th Last name
|
|
th Position
|
|
th Office
|
|
th Start date
|
|
th Salary
|
|
tfoot
|
|
tr
|
|
th First name
|
|
th Last name
|
|
th Position
|
|
th Office
|
|
th Start date
|
|
th Salary
|
|
// Container-fluid Ends
|
|
include ../../components/footer
|
|
include ../../components/footer-files
|