<html>
<head>
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/w/dt/dt-1.10.18/rr-1.2.4/datatables.min.css"/>
<script type="text/javascript" src="https://cdn.datatables.net/w/dt/dt-1.10.18/rr-1.2.4/datatables.min.js"></script>
<meta charset=utf-8 />
<title>DataTables - JS Bin</title>
</head>
<body>
<div class="container">
<table id="example" class="display" style="width:100%">
<thead>
<tr>
<th>Seq.</th>
<th>Phase</th>
<th>Start (hour)</th>
<th>duration (hours)</th>
<th>End (hour)</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Phase X</td>
<td class="start">15</td>
<td class="duration">1</td>
<td class="end">16</td>
</tr>
<tr>
<td>2</td>
<td>Phase Y</td>
<td class="start">16</td>
<td class="duration">3</td>
<td class="end">19</td>
</tr>
<tr>
<td>3</td>
<td>Phase Z</td>
<td class="start">19</td>
<td class="duration">1</td>
<td class="end">20</td>
</tr>
<tr>
<td>4</td>
<td>Phase W</td>
<td class="start">20</td>
<td class="duration">4</td>
<td class="end">24</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
body {
font: 90%/1.45em "Helvetica Neue", HelveticaNeue, Verdana, Arial, Helvetica, sans-serif;
margin: 0;
padding: 0;
color: #333;
background-color: #fff;
}
var tabellaFasi = "";
$(document).ready( function () {
tabellaFasi = $('#example').DataTable({
rowReorder: true
});
tabellaFasi.on('row-reorder', function (e, diff, edit) {
var indexInizialeSpostata = edit.triggerRow.data()[0];
for (var i = 0, ien = diff.length; i < ien; i++) {
var rowData = tabellaFasi.row(diff[i].node).data();
var durataOreRow = parseInt(rowData[3]);
if ( rowData[0] == indexInizialeSpostata ) {
console.log($(tabellaFasi.row(diff[i].oldData-1).node()).find(".start").text());
$(tabellaFasi.row(diff[i].oldData-1).node()).find(".start").text($(tabellaFasi.row(diff[i].newData-1).node()).find(".start").text());
var end = parseInt($(tabellaFasi.row(diff[i].oldData-1).node()).find(".start").text()) + durataOreRow;
$(tabellaFasi.row(diff[i].oldData-1).node()).find(".end").text(end);
} else {
$(tabellaFasi.row(diff[i].node).node()).find(".start").text($(tabellaFasi.row(diff[i-1].node).node()).find(".end").text());
var end = parseInt($(tabellaFasi.row(diff[i-1].node).node()).find(".end").text()) + durataOreRow;
$(tabellaFasi.row(diff[i].node).node()).find(".end").text(end);
}
}
});
tabellaFasi.on('row-reordered', function (e, diff, edit) {
tabellaFasi.rows().invalidate('dom').draw(false);
tabellaFasi.destroy();
setTimeout(function(){
tabellaFasi = $('#example').DataTable({
rowReorder: true
});
}, 100);
});
} );
You can jump to the latest bin by adding /latest
to your URL
Shortcut | Action |
---|---|
ctrl + [num] | Toggle nth panel |
ctrl + 0 | Close focused panel |
ctrl + enter | Re-render output. If console visible: run JS in console |
Ctrl + l | Clear the console |
ctrl + / | Toggle comment on selected lines |
ctrl + [ | Indents selected lines |
ctrl + ] | Unindents selected lines |
tab | Code complete & Emmet expand |
ctrl + s | Save & lock current Bin from further changes |
ctrl + shift + s | Clone Bin |
ctrl + y | Archive Bin |
Complete list of JS Bin shortcuts |
URL | Action |
---|---|
/ | Show the full rendered output. This content will update in real time as it's updated from the /edit url. |
/edit | Edit the current bin |
/watch | Follow a Code Casting session |
/embed | Create an embeddable version of the bin |
/latest | Load the very latest bin (/latest goes in place of the revision) |
/[username]/last | View the last edited bin for this user |
/[username]/last/edit | Edit the last edited bin for this user |
/[username]/last/watch | Follow the Code Casting session for the latest bin for this user |
/quiet | Remove analytics and edit button from rendered output |
.js | Load only the JavaScript for a bin |
.css | Load only the CSS for a bin |
Except for username prefixed urls, the url may start with http://jsbin.com/abc and the url fragments can be added to the url to view it differently. |