我正在尝试按照以下教程进行操作:
以及 Railscast
http://railscasts.com/episodes/205-unobtrusive-javascript
..在这两种情况下我都遇到同样的问题。 Controller 没有渲染 .js 模板(它回退到 .html),因为请求 header 没有像应有的那样请求 javascript。
我正在使用来自 github 的 jquery ujs 和 jquery 1.4.4
“data-remote=true”属性按照预期的方式提供给表单。但由于某种原因,这并没有修改请求。
如果我切换到prototype.js,它就可以工作(使用rails中的默认prototype.js和rails.js)。
我使用的是 Rails 3.0.0
任何建议表示赞赏。
最佳答案
浪费了一天的时间...:-(
我发现,当您生成新的 Rails 3 应用程序时,会在 public/javascripts 文件夹中创建一个名为rails.js 的文件,以及您在 Rails 2 项目中看到的所有其他 .js 文件。
rails.js 包含所有不显眼的处理程序。默认情况下,Rails 假定您使用的是 Prototype.js 。
对于Jquery,将文件rails.js 替换为 https://github.com/rails/jquery-ujs
以下链接对我有帮助: http://www.simonecarletti.com/blog/2010/06/unobtrusive-javascript-in-rails-3/
关于jquery - Rails 3 中 jQuery 的 AJAX 和 UJS 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4241659/