Rails 3.1.3 jquery ajax无法在单独的.js文件中工作

Rails 3.1.3 jquery ajax无法在单独的.js文件中工作,jquery,ruby-on-rails,assets,Jquery,Ruby On Rails,Assets,我对Rails比较陌生。我有以下jquery代码: //used in my.html.erb $('#category_id').change( function() { var theURL = "/requests/byCategory/" + $('#category_id').val() $.ajax({url: theURL, success: function(data){ $('#displaySelect

我对Rails比较陌生。我有以下jquery代码:

    //used in my.html.erb
    $('#category_id').change( function() {
      var theURL = "/requests/byCategory/" + $('#category_id').val()
      $.ajax({url: theURL,
        success: function(data){
         $('#displaySelection').html(data);
        }
      })
    });
当我把它嵌套在erb中的脚本标记中时,它就工作了。当我将上面的jquery代码移动到app/assets/javascripts/my.js时,它不起作用。app/assets/javascripts/application.js如下所示:

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

显然,我没有正确理解资产管道。我做错了什么?

您是否将更改回调嵌入到
$(文档)中。准备好了吗

如果不是,则不应该是资产管道的问题,而是DOM加载的问题

'app/assets/javascripts/my.js' 'app/assets/javascripts/application.js'
是的,就是这样。没有考虑将DOM完全加载。谢谢
$(document).ready(function () {
  $('#category_id').change( function() {
    var theURL = "/requests/byCategory/" + $('#category_id').val()
    $.ajax({url: theURL,
      success: function(data){
       $('#displaySelection').html(data);
      }
    });
  });
});
//= require jquery
//= require jquery_ujs
//= require_tree .