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
希望这有效
我 运行 发现了一些我不太明白的有趣的东西。当为模型使用标准 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
希望这有效