DataTable Overview

DataTable is a pure JavaScript component that provides professional look-and-feel and a convenient programming model for displaying data in a scrollable and sortable table. It's a powerful yet easy-to-use control that supports different data sources (XML, JSON, CSV, JsArray, HTML tables) and has various possibilities (filtering, sorting, pagination, resizing, styling, copying etc.) still being very fast handling thousands of records (dynamic loading).

Main features

1. Supported data formats: XML, JSON, JsArray, CSV
Developers can use their favorite formats to specify data. All popular data formats are supported.

2. Initializing from an HTML table
Any HTML table can be turned into DataTable by a single command.

3. Linkable tables
This feature allows developers to create multiple DataTable instances on a page and easily implement various relationships through the API.

4. Simple integration with server side
Simple integration with any server side solution, such as PHP, .NET, Java.

5. Full API support
A full range of API with the detailed descriptions is available.

6. Support for internationalization
Support for internationalization allows applications to be translated and modified into local versions for thousands of languages.

7. Flexible columns
Each column in DataTable is configured individually: width, height, color, etc.

8. Complex headers and footers
The header (footer) can be presented as a single or multi line (the number of sub-levels is unlimited) and contains almost any content: text, an image, an html input, a link, a built-in filter, colspans, rowspans.

9. Different selection modes
You can set 7 different modes specifying how data will be selected by: cell, row, column, multi cell, multi row, multi column, block.

10. Styling with standard CSS
You can use CSS in conjunction with DataTable content to achieve the desired look-and-feel. CSS can be applied to the whole table or to a specific column, row, cell.

11. Resizable columns and rows
Columns width or rows height can be changed by dragging the related border.

12. Copying to/from clipboard
By common CTRL+C/CTRL+V keyboard shortcuts data can be copied to some other application for further processing or moved within one or several DataTables.

13. On-the-fly filtering
The library offers abundant possibilities of filtering, starting from built-in filters (text and select) and ending with fully custom filtering logic.

14. Sorting a column by clicking the header with data type detection
This feature allows users to sort data (according to one of the 4 predefined sorting types: integer, date, string and string_strict) by a single click on the header. Custom sorting rule can be defined as well.

15. Variable length and localization of paging
One or several pagers can be added to the app to display data page by page. Data will not be retrieved from server side until the related page is opened. The number of rows per page, templates for navigation controls are set up.

16. Fixed one or several left (right) columns when table is scrolled horizontally
The library provides the 'split' mode that allows you to have the table separated into two parts: 'fixed' and 'scrolled'.

17. Showing or hiding columns
Any column in the table can be hidden (showed) using corresponding methods.

18. Math formulas for cells
Developers have an opportunity to load data that are stored as mathematical expressions. DataTable parses, evaluates such expressions and presents result in the related cells.

19. Scrolling options for table viewport
When your viewport is less than a page you can enable vertical (horizontal) scrolling to be able to see the hidden info. You also can enable scrolling by whole rows.

20. Setting different heights for rows and different widths for columns
You can set different widths (heights) for columns (rows). Set values will be saved regardless of any other enabled size parameters.

21. Export to PDF or Excel
DataTable can be exported to PDF or Excel for further processing. Besides, you can define how the table will look in the document after it is exported by configuring various server side options.

22. Dynamically fetching the rows from the server when the table is scrolled up and down
Working with large datasets, developer can load data dynamically to reduce complexity and improve performance. Polling interval and the number of loaded records are controlled.

23. Callbacks for all events: load, sorting, etc.
Numerous events let you handle any action or proceeding that can happen in the app.
Back to top
If you have not checked yet, be sure to visit site of our main product Webix web ui framework and page of javascript data table product.