javascript 未在 rails 编辑页面上执行

javascript not executing on rails edit page

我 运行 发现了一些我不太明白的有趣的东西。当为模型使用标准 rails 脚手架时,我通过单击 'Edit' link (/user/1/edit) 和 JavaScript 导航到 #edit 操作不执行。一旦我 刷新 这个编辑页面,JavaScript 运行 就如预期的那样。我假设这是 rails 中的某种缓存机制,但我无法弄清楚。有人对此有什么想法吗?

/编辑

事实上,JavaScript 在我进行硬刷新之前似乎不会对所有页面操作执行。

问题与 Turbolinks 有关。 http://railscasts.com/episodes/390-turbolinks?view=comments 关于 Turbolinks 的一些额外信息可能对您有更大的帮助。

您的问题可能来自 turbolinks。 问题是因为您绑定事件的节点不再存在。

如果您仍然需要 turbolink 的魔法,您可以使用 jquery.turbolinks.js 来解决这个问题。

只需添加这个gem

gem 'jquery-turbolinks'

并在应用程序 js 中

//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//
// ... your other scripts here ...
//
//= require turbolinks

希望这有效