Package Exports
- simple-datatables
- simple-datatables/dist/index.js
- simple-datatables/dist/module.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (simple-datatables) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
simple-datatables
A lightweight, extendable, JavaScript HTML table library written in TypeScript and transpilled to Vanilla JavaScript. Similar to jQuery DataTables for use in modern browsers, but without the jQuery dependency.
Examples / Demos
See the demos here and the documentation here.
Upgrading
For upgrading from one major version to another, check the upgrade guide: https://fiduswriter.github.io/simple-datatables/documentation/Upgrading
Note: The upgrade from version 5 version 6 is the most complicated upgrade so far. Please read through the instructions before filing complaints. If you run simple-datatables from a CDN, make sure that you have fixed it to a specific major or minor version so that you do not accidentally upload to a new version that requires you to do lots of manual adjustments.
CDN
To use the CDN version of simple-datatables use either https://cdn.jsdelivr.net/npm/simple-datatables@latest or https://unpkg.com/simple-datatables. You also need to add the CSS styling, so the elements you'll add to html head element can for example be these:
Note: For production websites, specify a specific major version. For example https://cdn.jsdelivr.net/npm/simple-datatables@6 for the latest version in the 6.x.x series or https://cdn.jsdelivr.net/npm/simple-datatables@6.0 for the latest version in the 6.0.x series.
<link href="https://cdn.jsdelivr.net/npm/simple-datatables@latest/dist/style.css" rel="stylesheet" type="text/css">
<script src="https://cdn.jsdelivr.net/npm/simple-datatables@latest" type="text/javascript"></script>License
LGPL
Features
- Sortable/filterable columns
- Pagination
- Searchable
- Customisable layout
- Customisable labels
- Customise column rendering
- Export to common formats like
csv,txt,json, andsql - Import
csvandjsondata - Control column visibility
- Reorder or swap columns
- dayjs integration for sorting columns with datetime strings
- Using diffDOM for faster DOM updates.
simple-datatables Documentation
History
This project started as a fork of Vanilla-DataTables, but it has since been converted to TypeScript.
If you want a version that works in very old browsers (IE, etc.), then head over to https://github.com/fiduswriter/simple-datatables-classic .
Install
npm
npm install simple-datatables --saveYarn
yarn add simple-datatablesQuick Start
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"
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 parameter:
import {DataTable} from "simple-datatables"
const dataTable = new DataTable("#myTable", {
searchable: false,
fixedHeight: true,
...
})If using the CDN:
const dataTable = new simpleDatatables.DataTable("#myTable", {
searchable: false,
fixedHeight: true,
...
})How to contribute?
- Fork the repository
- Create a sub-branch
- Clone the sub-branch to your local system
- Install NodeJS
- Open the project in a code editor (for example Visual Studio Code or Pulsar Edit)
- Open the Terminal
- Run
npm installin the Terminal - Start making changes and contributing to the project 🙂
- You can run
npm run test_serverto test your code. This runs on port 3000 (http://localhost:3000/) - You can also run
npm run buildin the Terminal to build the final files - Once finished, then commit/push your code and create a Pull Request on GitHub for the changes