我为jQuery找到了这个很棒的Tablesorter插件,但我无法使用PHP生成的表。这是代码:
<script type="text/javascript">
function table() {
$("#container").load("table.php?randval="+Math.random());
}
$(document).ready(function() {
table();
$("table").tablesorter();
});
</script>
其中#container是表所在的div,table是表的名称。我得到了表加载,但排序功能不起作用。
如果我把表直接放在页面的html中,它就可以工作..但我没有看到有一个静态表进行排序的重点。
非常感谢任何帮助。
答案 0 :(得分:3)
$ .load()执行异步请求,即函数不会在返回之前等待数据到达。因此,在将表添加到文档之前,最有可能执行$("table").tablesorter();
。要么使它成为同步调用,要么(甚至更好)传递一个处理程序,以便加载完整的事件。
.load(url,[data],[complete(responseText,textStatus,XMLHttpRequest)])
url 包含请求发送到的URL的字符串 数据随请求发送到服务器的地图或字符串 complete(responseText,textStatus,XMLHttpRequest)请求完成时执行的回调函数。
<script type="text/javascript">
$(document).ready(function() {
$("#container").load(
"table.php?randval="+Math.random(),
null,
function (responseText, textStatus, req) {
$("table").tablesorter();
}
);
});
</script>