DataTable - Custom Data source sorting
HTML
<link rel="stylesheet" href="//cdn.datatables.net/1.9.4/css/jquery.dataTables.css">
<script src="//cdn.datatables.net/1.9.4/js/jquery.dataTables.js"></script>
<body>
<table id="example">
<thead>
<tr>
<th>header 1</th>
<th>header 2</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<input type="text" value="123" />
</td>
<td>123</td>
<td><input type="checkbox" > </td>
</tr>
<tr>
<td>
<input type="text" value="124" />
</td>
<td>124</td>
<td><input type="checkbox" > </td>
</tr>
<tr>
<td>
<input type="text" value="1234" />
</td>
<td>1234</td>
<td><input type="checkbox" > </td>
</tr>
<tr>
<td>
<input type="text" value="234" />
</td>
<td>234</td>
<td><input type="checkbox" > </td>
</tr>
</tbody>
</table>
</body>
JavaScript
$.fn.dataTableExt.afnSortData['dom-text'] = function (oSettings, iColumn) {
var aData = [];
$('td:eq(' + iColumn + ') input', oSettings.oApi._fnGetTrNodes(oSettings)).each(function () {
aData.push(this.value);
});
return aData;
};
var table = $('#example').dataTable({
aoColumns: [{
sSortDataType: 'dom-text'
},
null]
});