Javascript 在回调后更新DataTables筛选/排序标记

Javascript 在回调后更新DataTables筛选/排序标记,javascript,jquery,datatables,timeago,Javascript,Jquery,Datatables,Timeago,我正在使用来格式化我的列表列中的时间戳。fnDrawCallback DataTables选项允许我设置/更新格式化的时间戳,如: <abbr class="timeago" title="2008-07-17T09:24:17Z">July 17, 2008</abbr> 但是,fnDrawCallback不会更新搜索标记,因此查询年份不会返回任何结果。有没有办法强制DataTables更新其搜索标记 编辑 为了清晰起见,我初始化了tableData和TableHea

我正在使用来格式化我的列表列中的时间戳。fnDrawCallback DataTables选项允许我设置/更新格式化的时间戳,如:

<abbr class="timeago" title="2008-07-17T09:24:17Z">July 17, 2008</abbr>
但是,fnDrawCallback不会更新搜索标记,因此查询年份不会返回任何结果。有没有办法强制DataTables更新其搜索标记

编辑

为了清晰起见,我初始化了tableData和TableHeaders,这是一个通过JSON传入的哈希数组。这似乎很好,因为这些数据在表中显示得很顺利。问题是Timeago修改了fnDrawCallback上的DOM,这是在填充了表的筛选/排序标记之后发生的

// tableHeadings === ['a', 'b', 'DateOne', 'DateTwo', ...]
for(i=0; i<tableHeadings.length; i++) {
    tableHeadings[i] = { "sTitle" : tableHeadings[i], };
    if(tableHeadings[i].sTitle.match(/Date/)) {
        tableHeadings[i].fnRender = function (c) { // closure over i
            return function (o) {
                var iso_time = o.aData[c].replace(/\s/, "T") + "Z";
                return '<abbr class="timeago" title="'+iso_time+'">'+'</abbr>';
            }
        }(i);
    }
}

所以我可以搜索iso_时间,但不是两年前。

您使用的是服务器端过滤还是客户端过滤?能否请您也发布如何初始化AOU列?
// tableHeadings === ['a', 'b', 'DateOne', 'DateTwo', ...]
for(i=0; i<tableHeadings.length; i++) {
    tableHeadings[i] = { "sTitle" : tableHeadings[i], };
    if(tableHeadings[i].sTitle.match(/Date/)) {
        tableHeadings[i].fnRender = function (c) { // closure over i
            return function (o) {
                var iso_time = o.aData[c].replace(/\s/, "T") + "Z";
                return '<abbr class="timeago" title="'+iso_time+'">'+'</abbr>';
            }
        }(i);
    }
}