JSFiddle - React, Tailwind, and code Playground
HTML
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="//cdn.datatables.net/1.10.4/css/jquery.dataTables.min.css">
<script src="//cdn.datatables.net/1.10.4/js/jquery.dataTables.min.js"></script>
<script src="//cdn.datatables.net/tabletools/2.2.0/js/dataTables.tableTools.js"></script>
<link rel="stylesheet" href="//cdn.datatables.net/tabletools/2.2.0/css/dataTables.tableTools.css">
<link rel="stylesheet" href="//cdn.datatables.net/plug-ins/9dcbecd42ad/integration/bootstrap/3/dataTables.bootstrap.css">
<script src="//cdn.datatables.net/plug-ins/9dcbecd42ad/integration/bootstrap/3/dataTables.bootstrap.js"></script>
<div class="table-responsive">
<div class="row">
<div class="form-group">
<div class="col-lg-8">
<a href="#" class="btn btn-success pull-left">Download CSV</a>
</div>
<div class="col-lg-4">
<div class="input-group">
<input type="text" class="form-control pull-right" placeholder="Search" id="searchbox">
<span class="input-group-btn">
<button class="btn btn-default" id="searchbtn" type="button">Search</button>
</span>
</div><!-- /input-group -->
<br>
</div>
</div>
</div>
<div class="table-responsive">
<table class="table table-striped table-bordered table-hover" id="dataTables">
<thead>
<tr>
<th>Rendering engine</th>
<th>Browser</th>
<th>Platform(s)</th>
<th>Engine version</th>
<th>CSS grade</th>
</tr>
</thead>
<tbody>
<tr>
<td>Trident</td>
<td>Internet
Explorer 4.0</td>
<td>Win 95+</td>
<td> 4</td>
<td>X</td>
</tr>
<tr>
<td>Trident</td>
<td>Internet
...
JavaScript
$(document).ready(function() {
oTable = $('#dataTables').dataTable( {
"sDom": '<"top"l>rt<"bottom"ip><"clear">',
stateSave: true,
stateDuration: 300,
"stateLoadParams": function (settings, data) {
$("#searchbox").val(data.search.search);
}
});
$('#searchbox').on("input", function() {
oTable.fnFilter( $(this).val() );
});
$('#searchbtn').click(function(){
oTable.fnFilter( $(searchbox).val() );
});
});