A lightweight, extendable, dependency-free javascript HTML table plugin that also works in older browsers. Similar to jQuery DataTables, but without the jQuery dependency. See Simple-DataTables for a version that uses up-to-date technology and only targets current browsers.
Based on Vanilla-DataTables, but written in ES2018.
See the demos here.
To use the CDN version of Simple-DataTables use either https://cdn.jsdelivr.net/npm/simple-datatables-classic@latest or https://unpkg.com/simple-datatables-classic. You also need to add the CSS styling, so the elements you'll add to html head element can for example be these:
<link href="https://cdn.jsdelivr.net/npm/simple-datatables-classic@latest/dist/style.css" rel="stylesheet" type="text/css">
<script src="https://cdn.jsdelivr.net/npm/simple-datatables-classic@latest" type="text/javascript"></script>
LGPL
- Sortable columns
- Pagination
- Searchable
- Customisable layout
- Customisable labels
- Customise column rendering
- Load data via AJAX requests
- Export to common formats like
csv
,txt
json
, andsql
- Import
csv
andjson
data - Control column visibility
- Reorder or swap columns
- dayjs integration for sorting columns with datetime strings
- Extentable with custom plugins See the Simple-DataTables-classic wiki
Simple-DataTables-classic Documentation
npm install simple-datatables-classic --save
Then just initialise the plugin by import DataTable and either passing a reference to the table or a CSS3 selector string as the first parameter:
import {DataTable} from "simple-datatables-classic"
const myTable = document.querySelector("#myTable");
const dataTable = new DataTable(myTable);
// or
const dataTable = new DataTable("#myTable");
You can also pass the options object as the second paramater:
import {DataTable} from "simple-datatables-classic"
const dataTable = new DataTable("#myTable", {
searchable: false,
fixedHeight: true,
...
})
If using the CDN:
const dataTable = new simpleDatatables.DataTable("#myTable", {
searchable: false,
fixedHeight: true,
...
})