在ajax调用之后,tablesorter文本提取不起作用

时间:2013-08-21 14:31:36

标签: jquery jquery-plugins tablesorter

我正在使用绝对精彩的tablesorter插件对表格进行排序。

但是(总有一个但是),我分配的文本提取在AJAX更新后似乎不起作用。

这是我初始化插件的方式:

$("table.prices").tablesorter({
    textExtraction: function (node) {
        if (node.innerHTML == "N/A") {
            if (node.className == 'col_14')
                return "10/31/1972";
            else
                return " ";
        }
        else {
            return node.innerHTML;
        }
    },
    cssChildRow: 'index',
    widgets: ['stickyHeaders'],
    cssInfoBlock: "tablesorter-no-sort",
    headers: { /*20: { sorter: 'incept-date'}*/0: { sorter: false }, 1: { sorter: false }, 2: { sorter: false }, 3: { sorter: false }, 4: { sorter: false }, 23: { sorter: false} },
    sortList: [[13, 0]]
});

我使用文本提取,因为我希望所有列上的N/A(s)保持在底部并对日期列进行排序。

问题是,当我用新数据更新我的表时,文本Extraction不起作用 这是我的AJAX呼叫代码:

 $.ajax({
            contentType: "text/html; charset=utf-8",
            dataType: "html",
            url: "/AjaxCall.aspx",
            success: function (data) {
                $("table.prices").html(data);
                 $("table.prices")
                    .trigger("update")
                    .trigger("appendCache"); }
        });

问题:如何在表格更新新数据后使文本提取工作。

1 个答案:

答案 0 :(得分:0)

当使用ajax拉取数据时,结果if (node.className == 'col_14')不正确。 在ajax调用之后,Tablesorter实际上保留了所有初始化属性。