1

我花了几个星期来构建一个数据表,显示来自服务器的最新信息(大约每 10 秒)。我已经完成了,但我认为我遇到了一个主要问题 - 这是创建/使用数据表的底层设计可能是完全错误的(呜咽!)。由于我不知道如何在 stackoverflow 上放置打印屏幕,因此简要总结如下:

  1. JSP 页面每 10 秒向服务器发送一次请求。
  2. 从服务器返回的响应具有最新信息。
  3. 返回的响应是 XML 格式的。XML 具有表元素(表 id=snaptable)。基本上是一个 DHTML。
  4. JSP 页面将这个 XML(表 id=snaptable)插入到这个页面的一个 DIV 元素中。
  5. 根据这个表 id=snaptable 创建一个数据表。
  6. 每 10 秒重复一次 - 每次根据响应中的新信息重新创建新表 id=snaptable。

这很好用。

这是问题所在:
1. 如果我转到第 2 页,10 秒后它会自动返回第 1 页
2. 我认为这里发生的情况是因为每 10 秒出现的每个新信息都是数据表的一个新实例(记住 - 我每 10 秒重新创建一个数据表),因此它会自动返回到第 1 页。

我想要的是,如果我在第 2 页或第 3 页,我想保留在该页面上,而数据表每 10 秒刷新一次。我认为我有一个错误的设计,并且由于我付出的所有努力而感觉很糟糕。如何以最短的方式解决这个问题?

请指教。谢谢

4

1 回答 1

1

您的信息量不是很大(某些来源可能会有所帮助:),但请尝试添加bStateSave到 DataTable 创建中,例如

var myTable = $('#myTable').dataTable( {
    "bStateSave": true
    ...
});

bStateSave 的文档http://www.datatables.net/ref#bStateSave

于 2012-10-28T13:31:37.043 回答