我正在尝试对动态加载的表使用jquery tablesorter。但是,尽管表排序器在静态表中可以正常工作,但我无法使其在已加载的表中正常工作。
根据这里发布的类似问题的答案,我尝试在load()之后调用tablesorter(),并在load()的回调函数中调用它。但是它们都不起作用。
这是我正在做的事的一个例子:
<html><head></head>
<body>
<!-- First table gets sorted properly -->
<table id="firstTable">
<thead><tr><th>Name</th><th>Number</th></tr></thead>
<tbody><tr><td>John</td><td>100</td></tr><tr><td>Paul</td><td>200</td></tr></tbody>
</table>
<!-- Second table where the sort doesn't work -->
<div id="secondTable"></div>
<script src="js/jquery.min.js"></script>
<script src="js/jquery.tablesorter.min.js"></script>
<script>
$(function($){
$("#firstTable").tablesorter();
$("#secondTable").load("secondtable.html", callback);
function callback() {
$("#secondTable").tablesorter();
}
});
</script>
</body></html>
还有'secondtable.html'的内容:
<table id="secondTable">
<thead><tr><th>Name</th><th>Number</th></tr></thead>
<tbody><tr><td>Steve</td><td>500</td></tr><tr><td>Alice</td><td>800</td></tr></tbody>
</table>