Datatables
HTML
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://code.jquery.com/jquery-2.2.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.10.12/js/dataTables.bootstrap.min.js"></script>
<script src="https://cdn.datatables.net/responsive/2.1.0/js/dataTables.responsive.min.js"></script>
<script src="https://cdn.datatables.net/responsive/2.1.0/js/responsive.bootstrap.min.js"></script>
<link rel="stylesheet" href="//cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css">
<link rel="stylesheet" href="//cdn.datatables.net/responsive/2.1.0/css/responsive.bootstrap.min.css">
<script src="https://cdn.datatables.net/colreorder/1.5.1/js/dataTables.colReorder.min.js"></script>
<div class="container">
<table id="tabTest" class="table dt-responsive table-bordered">
<thead>
<tr>
<th scope="col">Name</th>
<th scope="col">Value1</th>
<th scope="col">Value2</th>
<th scope="col">Value3</th>
<th scope="col">More Values1</th>
<th scope="col">More Values2</th>
</tr>
</thead>
<tbody>
<tr>
<td>Name1</td>
<td>V1</td>
<td>V2</td>
<td>V3</td>
<td>MV1</td>
<td>MV2</td>
</tr>
<tr>
<td>Name2</td>
<td>V1_2</td>
<td>V2_2</td>
<td>V3_2</td>
<td>MV1_2</td>
<td>MV2_2</td>
</tr>
</tbody>
</table>
<button id="switchme">
Switch Col 4 and 5
</button>
</div>
JavaScript
var slTable;
$(document).ready(function() {
var table = $('#tabTest').dataTable({
"colReorder": true,
"responsive":{
"details": false
}
});
$(document).on('click', '#switchme', function(){
$('#tabTest').DataTable().colReorder.move(4,5);
});
});