0

很抱歉在这里问这个问题,因为我通常会找到我需要问的所有问题,但我认为我的问题是我真的不知道要搜索什么才能得到答案。开始。我正在使用数据表来提供排序/ajaxified/可搜索的表。当我点击该站点时,一切都正确加载。将数据添加到表或排序或搜索后就可以了。

但是,如果我从页面导航,说回到主页,然后回到带有表格的页面,表格仍然存在,但数据表的东西已经消失了。我认为这是我刚刚开始为我的 Rails 应用程序使用 JS/Ajax 等的问题,我可能只是需要一些非常简单的东西。

我正在使用的具体代码是:

$ ->
$("#customers").dataTable
sDom: "<'row-fluid'<'span6'l><'span6'f>r>t<'row-fluid'<'span6'i><'span6'p>>"
sPaginationType: "bootstrap"

如果我观看页面加载,我想我看到了问题。当它最初加载时,或者我在添加新客户后将其发回时,我看到所有 JS 和 CSS 文件都加载了。但是,当我回击时,这是一个缓存调用,它不会再次加载任何这些调用,所以,我假设我不会再次“初始化”JS。

任何帮助,将不胜感激。

4

1 回答 1

0

所以,我的问题真的是不知道要问什么。这里的问题不在于 dataTables 或 JS 或 Ajax 或其中的任何一个。它是 Rails 4 中的 Turbolinks。因为它会缓存以使事情看起来很快,所以每当我离开页面并返回它时,我都必须刷新以初始化底层的 javascript。

Turbolinks 有一个选项,您可以将其传递到脚本中以在 page:restore 上准备好文档。那行得通。如果其他人遇到这个问题,他们可能会觉得这很有帮助。

于 2013-05-11T04:46:00.123 回答