jQuery Tablesorter动态加载CSV

好吧,这让我发疯了。

我有一个csv文件,我用CSVToTable动态加载到一个html表,然后用Tablesorter对它进行排序。

我遇到的问题是当我尝试应用像“filter”这样的Tablesorter小部件时,它们将不适用。

但是当我复制动态加载的html表并将它们复制并粘贴到我的源代码中时,它们运行没有问题。

有人可以向我解释为什么会发生这种情况以及如何动态加载我的CSV文件并应用Tablesorter小部件?

您可以在此处查看我的代码: http : //cdemeke.com/Chris_Test/Test14/test4.html

非常感谢你提前!

初始化CSVToTable脚本时,它会触发loadComplete事件,然后该事件具有初始化tablesorter的代码。 以下是需要修改的代码:

 $('#CSVTable2') .CSVToTable('test2.csv', { loadingImage: 'images/loading.gif', startLine: 1, headers: ['Project Number', ...] }) .bind("loadComplete",function() { $('#CSVTable2').find('table') .tablesorter({ widthFixed: true, widgets: ['zebra', 'filter'] }) .tablesorterPager({ container: $("#pager") }); }); 

此外,在您的jquery.tablesorter.js文件的顶部,此代码是:

 $(function() { $("table") .tablesorter({widthFixed: true, widgets: ['zebra']}) .tablesorterPager({container: $("#pager")}); }); 

我认为从这里删除它是一个好主意,因为在某些浏览器中初始化顺序可能是一个问题。 它不应该找到一个表,因为它尚未构建,但如果确实如此,它将强制它找到的所有表使用寻呼机。 如果表已经初始化,则将忽略tablesorter的额外参数。