<!DOCTYPE html>
<html>
  <head>
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://cdn.datatables.net/1.11.4/js/jquery.dataTables.js"></script>
<script src="https://cdn.datatables.net/select/1.3.4/js/dataTables.select.js"></script>
<script src="https://nightly.datatables.net/searchpanes/js/dataTables.searchPanes.js?2022-04-01"></script>
<script src="https://nightly.datatables.net/buttons/js/dataTables.buttons.js?2022-04-01"></script>
<script src="https://nightly.datatables.net/searchpanes/js/searchPanes.bootstrap4.js?2022-04-01"></script>
    
<link href="https://nightly.datatables.net/buttons/css/buttons.dataTables.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/css/bootstrap.min.css" integrity="sha384-zCbKRCUGaJDkqS1kPbPd7TveP5iyJE0EjAuZQTgFLD2ylzuqKfdKlfG/eSrtxUkn" crossorigin="anonymous">
<link href="https://cdn.datatables.net/1.11.4/css/jquery.dataTables.css" rel="stylesheet" type="text/css" />
<link href="https://cdn.datatables.net/select/1.3.4/css/select.dataTables.css" rel="stylesheet" type="text/css" />
<link href="https://nightly.datatables.net/searchpanes/css/searchPanes.dataTables.css?asuvbausbfvkasbfdl" rel="stylesheet" type="text/css" />
<link href="https://nightly.datatables.net/searchpanes/css/searchPanes.bootstrap4.min.css?asduvblaiusbvl" rel="stylesheet" type="text/css" />
    <title>DataTables - JS Bin</title>
    <meta charset=utf-8 />
  </head>
  <body>
    <table id="test" width="100%">
      <thead>
        <tr>
          <th></th>
          <th>Name</th>
          <th>Location</th>
        </tr>
      </thead>
    </table>
  </body>
</html>
 
body {
  font: 90%/1.45em "Helvetica Neue", HelveticaNeue, Verdana, Arial, Helvetica, sans-serif;
  margin: 0;
  padding: 0;
  color: #333;
  background-color: #fff;
}
 
$(document).ready(function() {
  var dt = $('table#test').DataTable({
// using 'B' and cascadePanes doesnt work
    dom: 'Bt',
    select: {
      style: 'multiple',
      selector: 'tr td.select-checkbox'
    },
    buttons: [
      {
        extend: 'searchPanes',
        config: {
          cascadePanes: true
        }
      }
    ],
    deferRender: true,
    serverSide: true,
    ajax: {
      url: 'http://showroom.efficient.it/ajax.php'
    },
    columns: [
      {
        data: 'DataTables_selected',
        className: 'select-checkbox',
        defaultContent: '',
        searchPanes: {
          show: true,
          options: [
            {
              label: 'Checked',
              value: function(rowData,rowIdx) {
if(rowIdx == 0) {
  console.log('FIRST ROW SELECTED ' + this.row(rowIdx, {selected: true}).any());  
}
                return this.row(rowIdx, {selected: true}).any();
              }
            },
            {
              label: 'Unchecked',
              value: function(rowData, rowIdx) {
                return this.row(rowIdx, {selected: true}).any() === false;
              }
            }
          ],
          header: 'Checked?',
        }
      },
      {
        data: 'name',
        searchPanes: {
          show: false
        }
      },
      {
        data: 'location',
        searchPanes: {
          show: false
        }
      }
    ]
  });
  var pauseRebuild = false;
  dt.on('select.dt', () => {
    if(!pauseRebuild) {
      pauseRebuild = true;
      dt.searchPanes.rebuildPane(0, true);
    }
    else {
      pauseRebuild = false;
    }
  });
  dt.on('deselect.dt', () => {
    dt.searchPanes.rebuildPane(0, true);
  });
  dt.on('draw.dt', () => {
console.log('DRAW EVENT');
  });
});
4 warnings
Line 33: Use '===' to compare with '0'.
Line 64: 'arrow function syntax (=>)' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz).
Line 73: 'arrow function syntax (=>)' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz).
Line 76: 'arrow function syntax (=>)' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz).
Output 300px

This bin was created anonymously and its free preview time has expired. Get a free unrestricted account

Dismiss x
public
Bin info
anonymouspro
0viewers