DataTables 1.8.1

DataTables CDN files for DataTables 1.8.1. This software was originally released on 26th June, 2011.

Release notes

This first maintenance release of DataTables 1.8 sees a couple of new features in the area of accessibility as well as fixing a number of bugs which have come to light since the 1.8.0 release.

In terms of accessibility the two form elements that DataTables uses (the page length menu and filtering input) are now wrapped in "label" elements - this means that when you click on the text the element becomes focused - it's also easier for a screen reader to interpret what text belongs to the form fields. The filter language option also has the option of using the magic macro "INPUT" now, which will be replaced with the input element - similar to how the information display works. For server-side processing the mDataProp value used for each column is now sent to the server, which can make it easier to figure out the order of columns on the client-side.

In terms of bug fixes, the big change is in scrolling with x-scrolling disabled - previously DataTables would try to draw a table smaller that it was possible for it to be, which could result in column misalignment (although DataTables would give an error). Now DataTables will not enter that error state and will not draw the table smaller than it can be (which will likely result in the window scrolling should this state be entered).

  • New: Accessibility features - the length changing control and filtering control are now wrapped in
  • New: The filtering input language string (oLanguage.sSearch) now has the "macro" _INPUT_ in it to allow the input element to be positioned anywhere in the string. For example if you gave "sSearch": "Data_INPUT_Tables" the output for the filter would be "DataTables". This is optional - if _INPUT_ is not given, then as before will will tack the input element on to the end of the given (or default) text string.
  • New: Send mDataProp to the server for server-side processing. This is very similar to the sNames parameter, but more convenient when already using mDataProp
  • Updated: For objects, consider mDataProp which is sent from DataTables for sorting and filtering to get the correct order of the rows. This is useful for ColReorder and more generally it increases the flexibility of the whole table
  • Updated: Update to latest jQuery - 1.6.1
  • Fix: Row alignment with x-scrolling disabled and the table too small to draw fully. Previously DataTables would emit an error about the columns not aligning in this case, and then try its best to draw the table, but this would end up looking quite bad. The fix is to not allow the table to draw smaller than it can possibly be when x-scrolling is disabled. This effects dynamically resizable tables - 5232
  • Fix: Columns which are sortable but hidden have events attached to them for sorting, but this event handler is not removed when the column is made visible again for fnDestroy. Simply need to change the order of how the destroy is done - i.e. remove events just after the columns are made visible, not before - 5497
  • Fix: When complex expressions are built up with aoColumnDefs, resulting in the ability for a column to be turned "on and off" during initialisation, it would result in the column classes possibly not being correct for the sorting - 5472 - kudos to rups for this fix
  • Fix: The ability to use complex data structures in 1.8 means that arrays which are passed into to fnUpdate need not strictly be the same length as the number of columns in the table - therefore the warning that is given if you do this is wrong... no other code changes needed - just no need to generate the warning! Unit test added - 5396
  • Fix: The table width is not set when auto width is disabled so we should not set it when destroying the table - 5220
  • Fix: A couple of typos in the examples
  • Fix: Details table example has one extra column in it at the start, so this needs to be taken into account when sorting - 5422