JSFiddle - React, Tailwind, and code Playground

by ronnjoe

HTML

<script src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.12/css/jquery.dataTables.min.css">
<script src="https://cdn.datatables.net/1.10.12/js/dataTables.bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<div class="columnVisibility">
<select name="abc" class="toggle-vis">
  <option data-column ="0" value="0">Name</option>
  <option data-column="1" value="1">Position</option>
  <option data-column="2" value="2">Office</option>
</select>

</div>

<table id="example" class="table table-striped table-bordered hover stripe" data-page-length="25" data-order="[[ 1, &quot;asc&quot; ]]" width="100%">
        <thead>
            <tr>
                <th>Name</th>
                <th>Position</th>
                <th>Office</th>
                <th>Age</th>
                <th>Start date</th>
                <th>Salary</th>
            </tr>
        </thead>
        <tfoot>
            <tr>
                <th>Name</th>
                <th>Position</th>
                <th>Office</th>
                <th>Age</th>
                <th>Start date</th>
                <th>Salary</th>
            </tr>
        </tfoot>
        <tbody>
            <tr>
                <td>Tiger Nixon</td>
                <td>System Architect</td>
                <td>Edinburgh</td>
                <td>61</td>
                <td>2011/04/25</td>
                <td>$320,800</td>
            </tr>
            <tr>
                <td>Garrett Winters</td>
                <td>Accountant</td>
                <td>Tokyo</td>
                <td>63</td>
                <td>2011/07/25</td>
                <td>$170,750</td>
            </tr>
            <tr>
                <td>Ashton Cox</td>
                <td>Junior Technical Author</td>
      ...

CSS

.hidden{
  display:none;
}
.toolbar {
    float: left;
}

JavaScript

// Varsion 1 : Simmple DataTable with along with columnToggle 
// Version 2 : bootstrap,customtoolbar, domPosition and html data-avalues 
 var table = $('#example').DataTable( {
        //"dom": '<lf<t><"toolbar"> ip> fl<"toolbar">rtip'        
        "dom": '<"top"fl>rt<"clear"><"bottom"ip>'
    });
//var htmlc = $("#columnVisibility").html();
//$("div.toolbar").html(htmlc);
  $("div.toolbar").html('<b>Custom tool bar! Text/images etc.</b>');
$('.toggle-vis').on( 'change', function (e) {
  e.preventDefault();

  // Get the column API object
  //console.log($(this).val());
  var column = table.column( $(this).val() );

  // Toggle the visibility
  column.visible( ! column.visible() );
} );