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

Posted

技术标签:

【中文标题】ajax调用后tablesorter文本提取不起作用【英文标题】:tablesorter text extraction not working after ajax call 【发布时间】:2013-08-23 23:49:30 【问题描述】:

我正在使用绝对出色的 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】:

当使用 ajax 提取数据时,if (node.className == 'col_14') 不是真的。 Tablesorter实际上保留了ajax调用后的所有初始化属性。

【讨论】:

我也有几乎相同的问题,请你看看我的问题,看看你能不能帮帮我。非常感谢***.com/questions/18451260/…

以上是关于ajax调用后tablesorter文本提取不起作用的主要内容,如果未能解决你的问题,请参考以下文章

使用 ajax 时,Tablesorter 禁用分页器按钮不起作用

Ajax 到 WCF 服务

使用 ajax 调用填充文本字段

使用dwr后,javaweb设置的session超时失效,web.xml和tomcat设置都不起作

jQuery tablesorter 页面插件不起作用

Jquery:TableSorter-具有特定格式的日期不起作用