DataTables 3.1.0
DataTables CDN files for DataTables 3.1.0. This software was originally released on 22nd September, 2026.
Release notes
DataTables 3.1 has two primary goals:
- Support for evaluation in window-less environments. This is to make it much easier to use DataTables in React server side components (e.g. with Next.js and similar)
- Improvements to the npm packaging to allow Node and bundlers to use the ESM files natively (rather than falling back to the
moduleflag.
There are a couple of fixes, but no significant changes to the actual functional code of DataTables.
New
- DataTables can now be loaded in a windowless environment such as Next.js.
Dom.on()static method for listening to events in a windowless environment (used by most extensions to listen for initialisation of a DataTable)- NPM packaging:
- Improved ESM loading. Now uses
exportsso Node and bundlers will see the ESM modules natively. - CSS target in exports so you can now do
import 'datatables.net-bs5/css';for example - Void types file for CSS so Typescript doesn't give an error on them
- Improved ESM loading. Now uses
Updated
- Altering the trial flow to be more explicit and less confusing
Fixes
- If the page had an element with the id
jQueryand jQuery wasn't loaded, the element would be used as the jQuery library! This of course resulted in an error. - When nested tables are present, the column width calculations could be wrong, resulting in one column gaining more width than it should.
- Use explicit
./prefix for paths in npm packaging
Files
css
- //cdn.datatables.net/3.1.0/css/dataTables.bootstrap.css
- //cdn.datatables.net/3.1.0/css/dataTables.bootstrap.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.bootstrap4.css
- //cdn.datatables.net/3.1.0/css/dataTables.bootstrap4.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.bootstrap5.css
- //cdn.datatables.net/3.1.0/css/dataTables.bootstrap5.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.bulma.css
- //cdn.datatables.net/3.1.0/css/dataTables.bulma.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.dataTables.css
- //cdn.datatables.net/3.1.0/css/dataTables.dataTables.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.foundation.css
- //cdn.datatables.net/3.1.0/css/dataTables.foundation.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.jqueryui.css
- //cdn.datatables.net/3.1.0/css/dataTables.jqueryui.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.material.css
- //cdn.datatables.net/3.1.0/css/dataTables.material.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.semanticui.css
- //cdn.datatables.net/3.1.0/css/dataTables.semanticui.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.tailwindcss.css
- //cdn.datatables.net/3.1.0/css/dataTables.tailwindcss.min.css
- //cdn.datatables.net/3.1.0/css/dataTables.uikit.css
- //cdn.datatables.net/3.1.0/css/dataTables.uikit.min.css
js
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap.js
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap4.js
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap4.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap4.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap4.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap5.js
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap5.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap5.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.bootstrap5.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.bulma.js
- //cdn.datatables.net/3.1.0/js/dataTables.bulma.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.bulma.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.bulma.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.dataTables.js
- //cdn.datatables.net/3.1.0/js/dataTables.dataTables.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.dataTables.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.dataTables.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.foundation.js
- //cdn.datatables.net/3.1.0/js/dataTables.foundation.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.foundation.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.foundation.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.jqueryui.js
- //cdn.datatables.net/3.1.0/js/dataTables.jqueryui.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.jqueryui.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.jqueryui.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.js
- //cdn.datatables.net/3.1.0/js/dataTables.material.js
- //cdn.datatables.net/3.1.0/js/dataTables.material.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.material.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.material.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.semanticui.js
- //cdn.datatables.net/3.1.0/js/dataTables.semanticui.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.semanticui.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.semanticui.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.tailwindcss.js
- //cdn.datatables.net/3.1.0/js/dataTables.tailwindcss.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.tailwindcss.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.tailwindcss.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.uikit.js
- //cdn.datatables.net/3.1.0/js/dataTables.uikit.min.js
- //cdn.datatables.net/3.1.0/js/dataTables.uikit.min.mjs
- //cdn.datatables.net/3.1.0/js/dataTables.uikit.mjs