Editor 3.0.0

DataTables CDN files for Editor 3.0.0. This software was originally released on 22nd July, 2026.

Release notes

This major release of Editor brings compatibility with DataTables 3, and matches the core library in that it no longer has any dependency on jQuery. Its only dependency now is DataTables core.

Moveover, Editor is now available on the DataTables CDN and the public NPM repository!

Editor is now part of the DataTables Plus suite of extensions and requires a license key to use. If you have an existing Editor license, your license key is available on your DataTables account page.

Further details on updating to Editor 3 are available in this upgrades notes document, which also highlights the major new features.

The release notes below document the specific changes.

Core

New

  • Editor is part of the DataTables Plus suite of extensions
  • static display controller which can be used to display the Editor form in a pre-defined element. This is primarily designed for use with a form that is always visible (i.e. standalone page editing).
  • dataSrc option which can be used to tell Editor where to get the data to edit from. Specifically in addition to the HTML and DataTable sources that it could proviously do, this option can now be explicity set to ajax to have the form read remote data without needing a source DataTable.
  • ajax.replacements will now apply to the Ajax calls made by upload and uploadMany.
  • on option which can be used to assign event handlers during initialisation. This matches DataTables' own on option.
  • template can now be given a template as the element to use as the template. In this case the contents are cloned and used as the form template. If any other element type is used, the original method of detaching the element and using it directly is still used.
  • Support for HTML5 validation attributes. Use the attr parameter for fields to set the validation conditions and the new fields.errorText option to set the error message. The error state is only triggered when the form is submitted. Server-side validation is uneffected.
  • The ajax option for autocomplete and tags can now be given as an object to provide fine-grained control over the Ajax request.

Updated

  • Fields which are in an error state now have a box-shadow to highlight them (DataTables default styling).
  • display can now be given as a CSS selector string, which will result in static being used with the given selector used to pick the element that the form will be displayed in. This is just an easy shorthand for static.
  • Editor buttons (when using DataTables styling) updated to match the styling of DataTables' and Button's styling in v3.
  • fields() undeprecated. It is tiny and can still be useful. No intention to remove it, so will keep it in place.
  • ES6 output target from TypeScript

Fixes

  • ajax.replacements can now have a value set to false, and as a special case, id if specified will cause the default _id_ / {id} replacement not to happen (i.e. you can now specify your own replacement, or cancel the default action).
  • It was possible for a close event to be triggered after an instance was destroyed. No longer.
  • Only attempt to replace _id_ if id has a value.
  • Text input alignment should inherit for inline editing
  • Upload button should have a cursor icon
  • When uploadMany is disabled, upload and remove buttons should be removed
  • When using nested editing with the styling frameworks (e.g. Bootstrap), the form title separator wasn't being displayed.

Docs

  • Consistent naming for DataTables types
  • Correct naming
  • Updated for the more consistent naming convention used for DataTables' defined types in DT3
  • Update event parameter naming to match API
  • Update for non-jQuery events

Examples

  • Update French translation examples to latest CDN data
  • Add static display controller example
  • New examples showing CardView being used with Editor
  • Remove jQuery dependencies from examples

.NET

New

  • DataTable class to enable reading of data from a database table without needing to use the Editor class (which is the read / write equivalent).
  • Editor.Fields() and DataTable.Columns() methods for adding multiple columns with an array (IEnumerable more specifically)
  • Method for removing duplicate dictionaries based on all key/value pairs, and called this before returning the output when manual entries were added to the options list.

Updates

  • Editor.Field() with an array is now deprecated

Fixes

  • Change the default data provider for SQLServer to be Microsoft.Data.SqlClient, updated from System.Data.SqlClient.
  • Deleting a row from a table which uses an alias for the table name would cause the row to not be deleted, and no errors or messages raised. It is now correctly deleted.
  • Fixed label and value assignment for manual options
  • SearchPanes support - empty data can mean null or empty string on the client-side. Previously the server-side used only null. Now both.
  • Perform a null check before going to the database, and return an empty list if are null (and would generate an exception)

Removed

  • Build for .NET Framework 4.5, 4.6 and 4.7. 4.8 is still supported

Node.js

New

  • DataTable class to enable reading of data from a database table without needing to use the Editor class (which is the read / write equivalent).
  • Full ESM support. This library is now built for both CJS and ESM environments, with Node automatically selected which build to use through the exports option in package.json.

Updated

  • Use native promise file system methods, rather than wrapping the sync ones.

Fixes

  • Improved Typescript typing
  • SearchPanes support - empty data can mean null or empty string on the client-side. Previously the server-side used only null. Now both.

PHP

New

  • DataTable class to enable reading of data from a database table without needing to use the Editor class (which is the read / write equivalent).

Fixes

  • Only include the config.php file if it is present
  • SearchPanes support - empty data can mean null or empty string on the client-side. Previously the server-side used only null. Now both.

Python

New Python port of the libraries for DataTables, providing full support for Editor.

Files