Datatables 获取';数据排序';search.push函数中数据表的正交值

Datatables 获取';数据排序';search.push函数中数据表的正交值,datatables,datatables-1.10,Datatables,Datatables 1.10,我在$.fn.dataTable.ext.search.push函数中循环行,以根据许多条件选择一些行。我正在为名为data的表的TD设置一些值。我正在尝试获取'data-sort'的值,但我不知道如何获取。我可以通过数据[2](第2列)获取单元格的内部数据,但不能通过“数据排序”或“数据过滤器”。有什么想法吗 $.fn.dataTable.ext.search.push( function (settings, data, dataIndex) { var iRati

我在
$.fn.dataTable.ext.search.push
函数中循环行,以根据许多条件选择一些行。我正在为名为data的表的
TD
设置一些值。我正在尝试获取
'data-sort'
的值,但我不知道如何获取。我可以通过
数据[2]
(第2列)获取单元格的内部数据,但不能通过“数据排序”或“数据过滤器”。有什么想法吗

$.fn.dataTable.ext.search.push(
    function (settings, data, dataIndex) {

        var iRating = parseFloat(data[2]) || 0; // this works 
        var datasort = //somehow get the data-sort from the TD
);
HTML

。。。。。

看起来这样我就能得到值。如果有其他更好的方法,请咨询:

$(settings.aoData[dataIndex].anCells[2]).data('sort')

是的,有一种更简单的方法

数据参数是该行的“搜索数据”。i、 e.每个列的“筛选”数据值-而不是“排序”数据/其他任何内容

但您也可以访问该行的完整数据对象,即第四个参数-行数据

因此,您需要在所需列的索引处使用rowData(您说“对于第2列”,零基So-2将用于第3列)

然后您应该找到一个名为“sort”的属性

function(settings, searchData, index, rowData, counter){
    var dataSort = rowData[1]['sort'];
    console.log(`This should be the value you want : ${dataSort}`); 
}

根据

这是我在datatables v1.10上的工作方式。我建议你把这篇文章作为对另一个问题的完整回答
function(settings, searchData, index, rowData, counter){
    var dataSort = rowData[1]['sort'];
    console.log(`This should be the value you want : ${dataSort}`); 
}