Adicione isso na inicialização da página, após o carregamento do plugin. Os camps
jQuery.extend( jQuery.fn.dataTableExt.oSort, {
"num-html-pre": function ( a ) {
var x = String(a).replace(/(?!^-)[^0-9]/g, "");
return parseFloat( x );
},
"num-html-asc": function ( a, b ) {
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
},
"num-html-desc": function ( a, b ) {
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
}
})
"num-html-pre": function ( a ) {
var x = String(a).replace(/(?!^-)[^0-9]/g, "");
return parseFloat( x );
},
"num-html-asc": function ( a, b ) {
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
},
"num-html-desc": function ( a, b ) {
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
}
})
Depois na criação do DataTable adicione no paramaetro aoColumns no indice da colula:
"aoColumns": [
{ "sType": "natural" },
{ "sType": "num-html" },
],
{ "sType": "natural" },
{ "sType": "num-html" },
],
Agora a segunda colula terá ordenação númerica