如何通过传递给数据的值而不是自定义呈现的内容对列进行排序?JQuery Datatables:按数据排序
我做了什么
使用jQuery数据表中显示的数据。从服务器到客户端,我只传递数字数据。在客户端,我使用自定义渲染函数创建表格内容:
{
"targets": [9],
"visible": true,
"searchable": true,
"render": function(data, type, row) {
if (row[9] == -2) {
return '';
}
if (row[9] == -1) {
return '<img width="20px" src="/~home/www/images/loader.gif" />';
}
var result = row[9];
if (row[10] > 0) {
result += '<strong><span class="text-success">';
result += '(+' + row[10] + ')';
result += '</span></strong>';
}
if (row[10] < 0) {
result += '<strong><span class="text-danger">';
result += '(' + row[10] + ')';
result += '</span></strong>';
}
return result;
},
},
{
"targets": [10, 11],
"visible": false,
"searchable": false,
},
即使通过列9,10和11仅包含数字值。根据所提供的JS函数生成的字符串值将第9列作为字符串排序。
如何通过原始'row [9]'指示数据表的顺序,但是保留单元格中的自定义渲染内容?
完蛋了,谢谢大卫 – Michal