新Rails 3.2.8 app不加载jQuery

我今天做了一个rails newrails new ,然后创建了一个简单的搜索栏:

 
searching!

好吧,一些点击处理程序怎么样! 所以assets / javascripts / searching.js.coffee:

 $('#search-btn').click -> alert 'BOOM' query = $('#search-bar').html console.log query 

没别的了。 所以我转到Chrome控制台:

 >$('a') null >$('body') null >$ function () { [native code] } 

没有选择器的jQuery,没有太多帮助。 这里发生了什么? 如果我将到页面或我的layout.html.erb,我们一切都很好。

我对下划线-min.js(注意它不是.min.js)有同样的问题,尽管在资产/ javascripts中没有加载。 鉴于我的(未修改的)application.js,它应该加载当前文件夹:

 //= require jquery //= require jquery_ujs //= require_tree . 

UPDATE

如果我转到Chrome检查器的“资源”选项卡并查看application.js,我会看到:

 // This is a manifest file that'll be compiled into application.js, which will include all the files // listed below. // // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts, // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path. // // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the // the compiled file. // // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD // GO AFTER THE REQUIRES BELOW. // //= require jquery //= require jquery_ujs //= require_tree . ; 

这看起来并不恰当包含其目录中的js文件

链轮由于某种原因不起作用。 检查您是否正确包含所有与资产相关的gem,并且未更改config / environments / development.rb。 显然确保public / javascripts /中没有application.js,它应该在app / assets / javascripts中。