DataTables 2.0.4
DataTables CDN files for DataTables 2.0.4. This software was originally released on 16th April, 2024.
Release notes
A busy release this one, with particular focus on addressing potential security issues found by CodeQL's code scanning - primary this is an improvement in the robustness of the HTML escaping and removal used by DataTables.
There are also a number of other fixes and even one new (small) feature. Please see the release notes below for full details.
New
- paging.boundaryNumberswhich can be used to disable the first and last numbers on either side of the ellipsis for the paging control. These could be considered irrelevant now that the first / last buttons are enabled by default.
Update
- paging.numbersrenamed to be- paging.buttonswhich makes a lot more sense!
Fixes
- Fomantic UI pagination HTML structure was incorrect
- Responsive, when used with scrolling, could result in column misalignment
- column-selectorwhen used as a function was not being passed the column header cell as the third parameter.
- A JS error would occur if initialised by passing a node which has an id in which characters would normally need to be escaped to make a CSS selector for the id.
- Use character code points for UTF8 characters which are outside the ASCII range
- A malicious plug-in for the DataTables API could potentially attempt to add to an object's prototype.
- Update HTML stripping to use non-polynomial regex
- Security (CodeQL) - potential for `` injection if done with multiple nesting
- CodeQL warning - Multiple character replacement (wouldn't actually cause an issue due to the fact that the string was already limited to a single character, but for completeness, the regex would catch multiple characters now.
- Use built in HTML striping function to read title from header - no security impact.
- For state saved child row state, only escape :characters if not already escaped.
- Remove duplicated code.
- Bootstrap 5 header colour now uses BS5 CSS variable
- When using server-side processing, and performing a client-side action, and querying the table before a redraw, it was possible to select a row which has been deleted (null), resulting in a JS error.
- jQuery UI integration wasn't using the jQuery layout renderer
- jQuery UI footer text was bold
Docs
- Correction for negative search leading character
- Correct example in row()for singular case
- Add note to row.add()about usingrow().node()immediately after without a draw.
Files
js
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap.js
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap4.js
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap4.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap4.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap4.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap5.js
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap5.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap5.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.bootstrap5.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.bulma.js
- //cdn.datatables.net/2.0.4/js/dataTables.bulma.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.bulma.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.bulma.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.dataTables.js
- //cdn.datatables.net/2.0.4/js/dataTables.dataTables.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.dataTables.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.dataTables.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.foundation.js
- //cdn.datatables.net/2.0.4/js/dataTables.foundation.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.foundation.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.foundation.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.jqueryui.js
- //cdn.datatables.net/2.0.4/js/dataTables.jqueryui.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.jqueryui.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.jqueryui.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.js
- //cdn.datatables.net/2.0.4/js/dataTables.material.js
- //cdn.datatables.net/2.0.4/js/dataTables.material.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.material.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.material.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.semanticui.js
- //cdn.datatables.net/2.0.4/js/dataTables.semanticui.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.semanticui.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.semanticui.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.tailwindcss.js
- //cdn.datatables.net/2.0.4/js/dataTables.tailwindcss.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.tailwindcss.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.tailwindcss.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.uikit.js
- //cdn.datatables.net/2.0.4/js/dataTables.uikit.min.js
- //cdn.datatables.net/2.0.4/js/dataTables.uikit.min.mjs
- //cdn.datatables.net/2.0.4/js/dataTables.uikit.mjs
css
- //cdn.datatables.net/2.0.4/css/dataTables.bootstrap.css
- //cdn.datatables.net/2.0.4/css/dataTables.bootstrap.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.bootstrap4.css
- //cdn.datatables.net/2.0.4/css/dataTables.bootstrap4.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.bootstrap5.css
- //cdn.datatables.net/2.0.4/css/dataTables.bootstrap5.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.bulma.css
- //cdn.datatables.net/2.0.4/css/dataTables.bulma.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.dataTables.css
- //cdn.datatables.net/2.0.4/css/dataTables.dataTables.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.foundation.css
- //cdn.datatables.net/2.0.4/css/dataTables.foundation.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.jqueryui.css
- //cdn.datatables.net/2.0.4/css/dataTables.jqueryui.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.material.css
- //cdn.datatables.net/2.0.4/css/dataTables.material.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.semanticui.css
- //cdn.datatables.net/2.0.4/css/dataTables.semanticui.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.tailwindcss.css
- //cdn.datatables.net/2.0.4/css/dataTables.tailwindcss.min.css
- //cdn.datatables.net/2.0.4/css/dataTables.uikit.css
- //cdn.datatables.net/2.0.4/css/dataTables.uikit.min.css