JSFiddle - React, Tailwind, and code Playground

by petr24

HTML

<script src="//code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://cdn.datatables.net/v/dt/dt-1.10.13/datatables.min.js"></script>
<script src="https://cdn.datatables.net/scroller/1.4.2/js/dataTables.scroller.min.js"></script>
<script src="https://cdn.datatables.net/select/1.2.1/js/dataTables.select.min.js"></script>
<script src="https://cdn.datatables.net/buttons/1.2.3/js/dataTables.buttons.min.js"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.13/css/jquery.dataTables.min.css">
<link rel="stylesheet" href="https://cdn.datatables.net/select/1.2.1/css/select.dataTables.min.css">
<link rel="stylesheet" href=" https://cdn.datatables.net/buttons/1.2.3/css/buttons.dataTables.min.css">
<input id="rowNumInput" type="text" placeholder="enter row number">

<table id="example" class="display nowrap" cellspacing="0" width="100%">
  <thead>
    <tr>
      <th>ID</th>
      <th>First name</th>
      <th>Last name</th>
      <th>ZIP / Post code</th>
      <th>Country</th>
    </tr>
  </thead>
</table>

JavaScript

var data = [];
        for ( var i=0 ; i<500 ; i++ ) {
            data.push( [ i, i, i, i, i ] );
        }
        
var rowSel; 
 
$(document).ready(function() {
    var table = $('#example').DataTable( {
    		scroller: true,
        scrollY: 300,
        stateSave: true,
        data: data,
        select: true,
        dom: 'Bfrtip',
        buttons: [
            {
                text: 'Reload table',
                action: function () {
                    table.draw('page');
                }
            },
            {
                text: 'Unselect rows',
                action: function () {
                		
                    table.rows({selected: true}).deselect();
                }
            },
            {
                text: 'Select row (programmatically)',
                action: function () {
                var rowNum = $("#rowNumInput").val();
                    table.rows(':eq('+rowNum+')').select();
                }
            }
        ]
    } );
} );