为了对表进行排序,我使用如下表进行排序:
<div class="dynamic-content">
<table>
<!-- code goes here -->
</table>
</div> <!-- this div reloads only -->
<script src="tablesort.js"></script>
$('table').tableSort();
问题:页面是动态重新加载的,因此在ajax调用之后,它不再起作用。 动态重新加载页面后如何使它仍然有效?
答案 0 :(得分:1)
您所做的只是打一次$('table').tableSort();
。
当表数据被ajax请求更改时,您必须再次调用它。
例如,如果您做类似的事情
$.ajax({
url: ...,
}).done(function( data ) {
// do something with data
$('table').tableSort();
});
答案 1 :(得分:0)
如果您不希望或无法侦听进行更改的ajax请求,则可以观察动态div的更改并再次对表进行排序。您可以使用https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver所述的突变观察器。
我还准备了一个代码框来演示https://codesandbox.io/s/w055v284r5