Download
Demo
- Overview
- Documents
User Rating: 4.9/5 ( 2 votes)
Your Rating:
jQuery dragtable is a library-independent js-function that gives you the ability to re-order table columns by using drag and drop.
Source: akottr.github.io
1. INCLUDE CSS AND JS FILES
<link rel="stylesheet" type="text/css" href="dragtable.css" /> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/jquery-ui.min.js"></script> <script src="jquery.dragtable.js"></script>
2. HTML
<table class="defaultTable sar-table"> <thead> <tr> <th>TIME</th> <th>%user</th> <th>%nice</th> <th>%system</th> <th>%iowait</th> <th>%idle</th> </tr> </thead> <tbody> <tr> <td>12:10:01 AM</td><td>28.86</td><td>0.04</td><td>1.65</td><td>0.08</td><td>69.36</td> </tr> <tr> <td>12:20:01 AM</td><td>26.54</td><td>0.00</td><td>1.64</td><td>0.08</td><td>71.74</td> </tr> <tr> <td>12:30:01 AM</td><td>29.73</td><td>0.00</td><td>1.66</td><td>0.09</td><td>68.52</td> </tr> </tbody> </table>
3. JAVASCRIPT
$('.defaultTable').dragtable();
4. OPTIONS
revert: false, // smooth revert dragHandle: '.table-handle', // handle for moving cols, if not exists the whole 'th' is the handle maxMovingRows: 40, // 1 -> only header. 40 row should be enough, the rest is usually not in the viewport excludeFooter: false, // excludes the footer row(s) while moving other columns. Make sense if there is a footer with a colspan. */ onlyHeaderThreshold: 100, // TODO: not implemented yet, switch automatically between entire col moving / only header moving dragaccept: null, // draggable cols -> default all persistState: null, // url or function -> plug in your custom persistState function right here. function call is persistState(originalTable) restoreState: null, // JSON-Object or function: some kind of experimental aka Quick-Hack TODO: do it better exact: true, // removes pixels, so that the overlay table width fits exactly the original table width clickDelay: 10, // ms to wait before rendering sortable list and delegating click event containment: null, // @see http://api.jqueryui.com/sortable/#option-containment, use it if you want to move in 2 dimesnions (together with axis: null) cursor: 'move', // @see http://api.jqueryui.com/sortable/#option-cursor cursorAt: false, // @see http://api.jqueryui.com/sortable/#option-cursorAt distance: 0, // @see http://api.jqueryui.com/sortable/#option-distance, for immediate feedback use "0" tolerance: 'pointer', // @see http://api.jqueryui.com/sortable/#option-tolerance axis: 'x', // @see http://api.jqueryui.com/sortable/#option-axis, Only vertical moving is allowed. Use 'x' or null. Use this in conjunction with the 'containment' setting beforeStart: $.noop, // returning FALSE will stop the execution chain. beforeMoving: $.noop, beforeReorganize: $.noop, beforeStop: $.noop