🏳️DataTables CDN

Website faviconcdn.datatables.net

[DataTables

Advanced interaction  

features for your tables.

](https://datatables.net/)

[Editor

Comprehensive editing  

library for DataTables.

](https://editor.datatables.net/)

[Manual](https://datatables.net/manual)

[Download](https://datatables.net/download)

Login / Register

Colour scheme

[What is this?](https://datatables.net/tn/20#Theme)

Auto

Light

Dark

*   [Examples](//datatables.net/examples/index)

*   [Manual](//datatables.net/manual/index)

*   [Reference](//datatables.net/reference/index)

*   [Extensions](//datatables.net/extensions/index)

*   [Plug-ins](//datatables.net/plug-ins/index)

*   [Blog](//datatables.net/blog/index)

*   [Forums](//datatables.net/forums/index)

*   [Support](//datatables.net/support/index)

*   [FAQs](//datatables.net/faqs/index)

*   [Download](//datatables.net/download/index)

*   [Purchase](//datatables.net/purchase/index)

≡ _Show site navigation_

DataTables CDN

==============

The DataTables [Content Delivery Network (CDN)](http://en.wikipedia.org/wiki/Content_delivery_network) is a permanent store of the software released as part of the DataTables project for you to use on your site without needing to host it yourself.

Furthermore, the CDN can serve the files for the DataTables components and dependencies that you require as a single concatenated and minified file, or as individual files through use of the [DataTables download builder](//datatables.net/download).

All you then need to do is include the files you want on your page! This can help improve performance on your site and make prototyping much easier.

The DataTables CDN is powered by the [CloudFlare](http://cloudflare.com) network.

#### Styling options

Select the styling libraries that you wish to use using the buttons below to display the files that should be included on your page.

DataTablesBootstrap 3Bootstrap 4Bootstrap 5  

BulmaFoundationjQuery UISemantic UI

[](#DataTables)DataTables

-------------------------

DataTables is the core software of the DataTables project, and involves two primary files, the DataTables Javascript and CSS.

*   [Documentation, usage and examples](//datatables.net/)

*   [Release notes](2.2.2/)

*   [Previous releases](releases.html)

### [](#Release)Release

DataTables 2.2.2 is the current stable release of DataTables.

CSS [](https://cdn.datatables.net/2.2.2/css/dataTables.dataTables.min.css)

JS [](https://cdn.datatables.net/2.2.2/js/dataTables.min.js)

[](#Extensions)Extensions

-------------------------

Extensions can be used to add additional functionality to DataTables. Those extensions which are part of the core DataTables project are available on the CDN. Current releases are shown below. The files for historical versions are also available, although for new projects always use the latest versions!

### [](#AutoFill)AutoFill

AutoFill adds an Excel like option to a table, allowing click and drag over cells, filling in information and incrementing numbers as needed.

*   [Documentation, usage and examples](//datatables.net/extensions/autofill)

*   [Release notes](autofill/2.7.0/)

*   [Previous releases](autofill)

CSS [](https://cdn.datatables.net/autofill/2.7.0/css/autoFill.dataTables.min.css)

JS [](https://cdn.datatables.net/autofill/2.7.0/js/dataTables.autoFill.min.js)

### [](#Buttons)Buttons

The Buttons extension for DataTables provides a common set of options, API methods and styling to display buttons on a page that will interact with a DataTable. The core library provides the based framework upon which plug-ins can built. Plug-in buttons are also provided for data export, printing and column visibility control.

*   [Documentation, usage and examples](//datatables.net/extensions/buttons)

*   [Release notes](buttons/3.2.2/)

*   [Previous releases](buttons)

CSS [](https://cdn.datatables.net/buttons/3.2.2/css/buttons.dataTables.min.css)

JS [](https://cdn.datatables.net/buttons/3.2.2/js/dataTables.buttons.min.js)

Buttons also provides the following files that provide functional buttons.

Column visibility control:

JS [](https://cdn.datatables.net/buttons/3.2.2/js/buttons.colVis.min.js)

Print button:

JS [](https://cdn.datatables.net/buttons/3.2.2/js/buttons.print.min.js)

HTML5 export buttons:

JS [](https://cdn.datatables.net/buttons/3.2.2/js/buttons.html5.min.js)

Please note that the HTML5 export buttons require [JSZip](https://stuk.github.io/jszip/) for Excel export and [PDFMake](http://pdfmake.org/) for PDF export. Use the [download builder](https://datatables.net/download) to make sure you get all the files you need.

### [](#ColReorder)ColReorder

ColReorder allows the end user to modify the column order of a table through drop-and-drag of column headers.

*   [Documentation, usage and examples](//datatables.net/extensions/colreorder)

*   [Release notes](colreorder/2.0.4/)

*   [Previous releases](colreorder)

CSS [](https://cdn.datatables.net/colreorder/2.0.4/css/colReorder.dataTables.min.css)

JS [](https://cdn.datatables.net/colreorder/2.0.4/js/dataTables.colReorder.min.js)

### [](#DateTime)DateTime

DateTime is DataTables' own DateTime picker, which we mainly use within Editor and SearchBuilder extensions to provide a user friendly way to select values for dates and times. It is freely available under the MIT license if you wish to use it in some other capacity or as part of a custom extension for DataTables.

*   [Documentation, usage and examples](//datatables.net/extensions/datetime)

*   [Release notes](datetime/1.5.5/)

*   [Previous releases](datetime)

CSS [](https://cdn.datatables.net/datetime/1.5.5/css/dataTables.dateTime.min.css)

JS [](https://cdn.datatables.net/datetime/1.5.5/js/dataTables.dateTime.min.js)

### [](#FixedColumns)FixedColumns

FixedColumns "freezes" in place the left most columns in a scrolling DataTable, to provide a guide to the end user (for example an index column).

*   [Documentation, usage and examples](//datatables.net/extensions/fixedcolumns)

*   [Release notes](fixedcolumns/5.0.4/)

*   [Previous releases](fixedcolumns)

CSS [](https://cdn.datatables.net/fixedcolumns/5.0.4/css/fixedColumns.dataTables.min.css)

JS [](https://cdn.datatables.net/fixedcolumns/5.0.4/js/dataTables.fixedColumns.min.js)

### [](#FixedHeader)FixedHeader

The FixedHeader plug-in will freeze in place the header, footer and left and/or right most columns in a DataTable, ensuring that title information will remain always visible.

*   [Documentation, usage and examples](//datatables.net/extensions/fixedheader)

*   [Release notes](fixedheader/4.0.1/)

*   [Previous releases](fixedheader)

CSS [](https://cdn.datatables.net/fixedheader/4.0.1/css/fixedHeader.dataTables.min.css)

JS [](https://cdn.datatables.net/fixedheader/4.0.1/js/dataTables.fixedHeader.min.js)

### [](#KeyTable)KeyTable

KeyTable provides Excel like cell navigation on any table. Events (focus, blur, action etc) can be assigned to individual cells, columns, rows or all cells.

*   [Documentation, usage and examples](//datatables.net/extensions/keytable)

*   [Release notes](keytable/2.12.1/)

*   [Previous releases](keytable)

CSS [](https://cdn.datatables.net/keytable/2.12.1/css/keyTable.dataTables.min.css)

JS [](https://cdn.datatables.net/keytable/2.12.1/js/dataTables.keyTable.min.js)

### [](#Responsive)Responsive

Responsive is an extension for DataTables that will automatically adjust the visible columns in a table to fit optimally into the available display space, with options for the end user to view any hidden data.

*   [Documentation, usage and examples](//datatables.net/extensions/responsive)

*   [Release notes](responsive/3.0.4/)

*   [Previous releases](responsive)

CSS [](https://cdn.datatables.net/responsive/3.0.4/css/responsive.dataTables.min.css)

JS [](https://cdn.datatables.net/responsive/3.0.4/js/dataTables.responsive.min.js)

### [](#RowGroup)RowGroup

RowGroup adds the ability to easily group rows in a DataTable by a given data point. The grouping is shown as an inserted row either before or after the group.

*   [Documentation, usage and examples](//datatables.net/extensions/rowgroup)

*   [Release notes](rowgroup/1.5.1/)

*   [Previous releases](rowgroup)

CSS [](https://cdn.datatables.net/rowgroup/1.5.1/css/rowGroup.dataTables.min.css)

JS [](https://cdn.datatables.net/rowgroup/1.5.1/js/dataTables.rowGroup.min.js)

### [](#RowReorder)RowReorder

RowReorder adds the ability for rows in a DataTable to be reordered through user interaction with the table (click and drag / touch and drag). Integration with Editor's multi-row editing feature is also available to update rows immediately.

*   [Documentation, usage and examples](//datatables.net/extensions/rowreorder)

*   [Release notes](rowreorder/1.5.0/)

*   [Previous releases](rowreorder)

CSS [](https://cdn.datatables.net/rowreorder/1.5.0/css/rowReorder.dataTables.min.css)

JS [](https://cdn.datatables.net/rowreorder/1.5.0/js/dataTables.rowReorder.min.js)

### [](#Scroller)Scroller

A virtual renderer for DataTables, allowing the table to look like it scrolls for the full data set, but actually only drawing the rows required for the current display, for fast operation.

*   [Documentation, usage and examples](//datatables.net/extensions/scroller)

*   [Release notes](scroller/2.4.3/)

*   [Previous releases](scroller)

CSS [](https://cdn.datatables.net/scroller/2.4.3/css/scroller.dataTables.min.css)

JS [](https://cdn.datatables.net/scroller/2.4.3/js/dataTables.scroller.min.js)

### [](#SearchBuilder)SearchBuilder

SearchBuilder provides the end user with an easy to use UI for them to create their own complex custom search expression for a DataTable. When searching through large sets of data for specific data, this can be extremely useful.

*   [Documentation, usage and examples](//datatables.net/extensions/searchbuilder)

*   [Release notes](searchbuilder/1.8.2/)

*   [Previous releases](searchbuilder)

CSS [](https://cdn.datatables.net/searchbuilder/1.8.2/css/searchBuilder.dataTables.min.css)

JS [](https://cdn.datatables.net/searchbuilder/1.8.2/js/dataTables.searchBuilder.min.js)

### [](#SearchPanes)SearchPanes

SearchPanes adds panes to the DataTable with the capability to search by selecting rows in the panes. This is very useful when it comes to adding a more comprehensive searching feature and custom search capabilities.

*   [Documentation, usage and examples](//datatables.net/extensions/searchpanes)

*   [Release notes](searchpanes/2.3.3/)

*   [Previous releases](searchpanes)

CSS [](https://cdn.datatables.net/searchpanes/2.3.3/css/searchPanes.dataTables.min.css)

JS [](https://cdn.datatables.net/searchpanes/2.3.3/js/dataTables.searchPanes.min.js)

### [](#Select)Select

Select is an extension for DataTables that provides table item selection capabilities - rows, columns and cells. Advanced selection options are available for multi-item selection and also item selection and retrieval via the DataTables API.

*   [Documentation, usage and examples](//datatables.net/extensions/select)

*   [Release notes](select/3.0.0/)

*   [Previous releases](select)

CSS [](https://cdn.datatables.net/select/3.0.0/css/select.dataTables.min.css)

JS [](https://cdn.datatables.net/select/3.0.0/js/dataTables.select.min.js)

### [](#StateRestore)StateRestore

StateRestore extends DataTables state saving abilities, allowing multiple states to be saved and reloaded at any time. There is also the possibility to customise which elements of DataTables are stored in each saved state.

*   [Documentation, usage and examples](//datatables.net/extensions/staterestore)

*   [Release notes](staterestore/1.4.1/)

*   [Previous releases](staterestore)

CSS [](https://cdn.datatables.net/staterestore/1.4.1/css/stateRestore.dataTables.min.css)

JS [](https://cdn.datatables.net/staterestore/1.4.1/js/dataTables.stateRestore.min.js)

[](#Plugins)Plugins

-------------------

The DataTables plug-ins are a little different from the software above in that they do not have a specific release. Rather, for the CDN, each commit is available using the initial part of the git hash for each commit, to ensure that the version of the file that you use is always available for your use and will not change version unexpectedly.

Furthermore, note that the use of plug-ins on the CDN is _primarily for prototyping_. Although you can include plug-ins on your page directly from the CDN, if you are using multiple plug-ins, you will benefit from combining those plug-ins that you are using into a single file to keep the number of imported files to a minimum.

*   [Latest plug-ins](plug-ins/2.2.2)

    *   [API](plug-ins/2.2.2/api)

    *   [Sorting](plug-ins/2.2.2/sorting)

    *   [Type detection](plug-ins/2.2.2/type-detection)

    *   [Integration](plug-ins/2.2.2/integration)

    *   [Features](plug-ins/2.2.2/features)

    *   [Internationalisation](plug-ins/2.2.2/i18n)

    *   [Pagination](plug-ins/2.2.2/pagination)

    *   [Filtering](plug-ins/2.2.2/filtering)

*   [Historic plug-in builds](plug-ins)

*   [Plug-in documentation](//datatables.net/plug-ins)

Page navigation

*   [Top](#top)

*   [DataTables](#DataTables)

    *   [Release](#Release)

*   [Extensions](#Extensions)

    *   [AutoFill](#AutoFill)

    *   [Buttons](#Buttons)

    *   [ColReorder](#ColReorder)

    *   [DateTime](#DateTime)

    *   [FixedColumns](#FixedColumns)

    *   [FixedHeader](#FixedHeader)

    *   [KeyTable](#KeyTable)

    *   [Responsive](#Responsive)

    *   [RowGroup](#RowGroup)

    *   [RowReorder](#RowReorder)

    *   [Scroller](#Scroller)

    *   [SearchBuilder](#SearchBuilder)

    *   [SearchPanes](#SearchPanes)

    *   [Select](#Select)

    *   [StateRestore](#StateRestore)

*   [Plugins](#Plugins)

#### DataTables

DataTables designed and created by [SpryMedia Ltd](//sprymedia.co.uk).  

© 2007-2025 [MIT licensed](//datatables.net/license/mit). [Privacy policy](/privacy.html).  

SpryMedia Ltd is registered in Scotland, company no. SC456502.

[](#)[](#)

[](#)