DataTables 1.10.10

DataTables CDN files for DataTables 1.10.10. This software was originally released on 8th November, 2015.

Release notes

This release is an important update for DataTables 1.10 addressing a number of issues that can been found since 1.10.9, improving its module loading capabilities accessibility and security.

Of particular note is the reworking on the CommonJS and AMD loaders that DataTables and all of its extensions use to use a consistent naming structure. DataTables and styling packages to integrate it with Bootstrap, Foundation, jQuery UI and of course its own styling, are now available on NPM and Bower under the name A blog post will follow shortly detailing how these packages can be used.


  • New: DataTables no longer defines itself as a named AMD module
  • New: CommonJS will load jQuery if it wasn't passed in
  • New: $.fn.dataTable.render.text renderer method that can be used to help prevent against possible XSS attacks. It will basically encode HTML entities so they are shown in the rendered view rather than being written directly as HTML.
  • New: language.aria.paginate options which can be used to specify ARIA label attributes for the pagination buttons. Particularly useful if you wish to use icons in place of the button text.
  • New: Pass the recalculation parameter through to the column-visibility event allowing listeners to optimise for it
  • New: order.fixed() to get / set the fixed ordering of the table


  • Update: $.fn.dataTable.render.number will now return the original value rather than NaN if the value cannot be parsed as a number.
  • Update: Allow a window to be passed in for CommonJS factory which gives DataTables the ability to be used in a headless environment (server-side rendering for example)
  • Update: A scrollX table is now allowed to collapse horizontally - simply don't specify style="width: 100%" or width="100%" for your table in the HTML and it will be allowed to collapse if the columns are smaller than the space required.
  • Update: Add column index information to the Requested unknown parameter error message to provide additional debug info
  • Update - docs: Note the focused selector modifier option from KeyTable 2.1


Core Javascript

  • Fix: Force a column width if scrollX is specified and a column width is given. This can be overruled if the width given is too small for the content
  • Fix: reported the page length as 10 when paging was disabled - should be -1
  • Fix: Column alignment errors in IE due to sub-pixel rendering issues. Basically this came down to the width of the table not equalling the width of the cells in the table and if the column widths assigned and the table width assigned did not match perfectly, IE would ignore the column widths assigning and layout as it saw best. Now the column width calculation will remove this sub-pixel issue by rounding up and also keep a track of the table width itself rather than reading from the DOM.
  • Fix:   in cells could cause column alignment errors as it was being counted as 6 characters rather than 1 in the find longest string method.
  • Fix: If scrollX is enabled for a table that doesn't need horizontal scrolling, but does have vertical scrolling, when the table is filtered to have no vertical scrolling the columns would be misaligned due to the column widths not being recalculated for the new table width.
  • Fix: Chrome has an odd bug whereby the max-height needs a reflow in order to be correctly calculated - otherwise a gap could appear at the bottom of the table
  • Fix: Some reset stylesheets will set vertical-align:baseline on all elements, which causes the header cells in a table body to be visible.
  • Fix: Performance improvement for the every() methods. Rather than a new API instance being explicitly created for every item, use the existing instance as the basis for the selector.
  • Fix: Column width calculation could be incorrect when not using any user defined widths or hidden columns
  • Fix: The every() method did not have the selector options applied to it - this was particularly noticeable with the columns().every() method
  • Fix: Don't trigger a draw when clicking on paging button for the current page - Bootstrap and Foundation only
  • Fix: If x-scrolling is enabled using $.fn.dataTable.defaults.scrollX=true; an error would occur
  • Fix: Adding a default builder string into the ext object to allow builder sourced files to work with require.js
  • Fix: Row ids were not being automatically picked up from DOM sourced tables


  • Fix - styling: jQuery UI - don't override text colour
  • Fix - styling: Bootstrap, Foundation and jQuery UI integration Javascript files use module.exports correctly
  • Fix - styling: jQuery UI styling with cell-border class and scrolling enabled could have the columns looking like they are slightly misaligned (1px) due to an incorrect border assignment
  • Fix - styling: Add support for Bootstrap's responsive tables
  • Fix - styling: Add styling for the processing message in Bootstrap and Foundation
  • Fix - styling: Bootstrap and Foundation integration XHTML error for ellipsis entity


  • Fix - examples: Write the code to be displayed in the server load code tab as text so any HTML entities will be escaped
  • Fix - example: Add link to features example for the options reference docs
  • Fix - example: Defensive programming in the SSP class
  • Fix - example: Description for row id example contained the wrong link to rowId
  • Fix - example: Add row API example was always redrawing to the first page


  • Fix - docs: deferLoading's default value was incorrect
  • Fix - docs: Clarify what elements $() can select
  • Fix - docs: Update footerCallback example to include a default value
  • Fix - docs: row().node() incorrectly used to$().
  • Fix - docs: rows().data() example referred to the wrong method
  • Fix - docs: Add a clearer statement to the order option for an empty array
  • Fix - docs: Remove reference to non-existent filter option (search) is the correct option
  • Fix - docs: Rendering for draw() caused version information to be dropped
  • Fix - docs: Description error in dt-init stateLoadCallback`
  • Fix - docs: Add a call to draw() in the examples for columns().order() and column().order().
  • Fix - docs: Add note to to note that, as a function, it will be called multiple times
  • Fix - docs: pageLength related had incorrect link to paging
  • Fix - docs: HTML entity encoding error in dom option
  • Fix - docs: Update search example to use the modern API
  • Fix - docs: Add language.decimal reference in language documentation
  • Fix - docs: Make reference documentation for orderFixed more explicit