JSFiddle - React, Tailwind, and code Playground
HTML
<table id="caltbl">
<thead>
<tr>
<th>
</th>
<th>
Date
</th>
<th>
hours
</th>
<th>
Module
</th>
</tr>
</thead>
<tbody>
<tr>
<td class="sortnr">1</td>
<td></td>
</tr>
<tr>
<td class="sortnr">3</td>
<td></td>
</tr>
<tr>
<td class="sortnr">2</td>
<td></td>
</tr>
<tr>
<td class="sortnr">4</td>
<td></td>
</tr>
</tbody>
</table>
JavaScript
var rows = $('#caltbl > tbody').children('tr').get();
rows.sort(function(a, b) {
var anum = parseInt($(a).find(".sortnr").text(), 10);
var bnum = parseInt($(b).find(".sortnr").text(), 10);
return anum-bnum;
});
for (var i = 0; i < rows.length; i++) {
$('#caltbl > tbody').append(rows[i]);
}