Javascript Rails:UJS未执行

Javascript Rails:UJS未执行,javascript,ruby-on-rails,unobtrusive-javascript,Javascript,Ruby On Rails,Unobtrusive Javascript,在我看来,我有一些UJ是用来替换部分的。.js文件如下所示: transition("#content_container", "<%= escape_javascript(render 'users/show') %>"); librarySorter("User", "<%= @user.username %>"); 更奇怪的是,如果我将这行复制并粘贴到我的firebug控制台中,它就会正常运行并执行。我已经修补这个好几个小时了,我仍然不知道为什么它不起作用。有什么

在我看来,我有一些UJ是用来替换部分的。.js文件如下所示:

transition("#content_container", "<%= escape_javascript(render 'users/show') %>");
librarySorter("User", "<%= @user.username %>");
更奇怪的是,如果我将这行复制并粘贴到我的firebug控制台中,它就会正常运行并执行。我已经修补这个好几个小时了,我仍然不知道为什么它不起作用。有什么想法吗

以下是librarySorter的外观(位于application.js中),供参考:

功能库分拣机(库类型,id){
函数发布\排序\活页夹(类型、顺序、名称){
$(“#概述_表”)。动画({opacity:0},400);
$(“#排序方法”).html(类型+“”+顺序);
var url=library_type==“User”?/users/'+id+'/owned_publications:“/groups/'+id+'/overview_sort”
$.ajax({
键入:“GET”,
数据:{'function':类型+''+order},
url:url,
成功:函数(){
$(“#出版物_排序_箭头”).remove();
变量箭头=(顺序='ASC')?'&darr;':'&uarr;';
$(“#排序”+名称)。解除绑定(“单击”)。单击(函数(){
出版物分类活页夹(类型,(顺序='ASC')?'DESC':'ASC',名称);
}).append(“+箭头+”);
}
});
}
$(“#排序标题”)。单击(函数(){
出版物分类活页夹(“出版物.标题”、“说明”、“标题”);
})
$('sort#u author')。单击(函数(){
出版物分类活页夹(“贡献者名称”、“描述”、“作者”);
})
$(“#排序_查看_日期”)。单击(函数(){
出版物分类活页夹(“评论。创建于”、“描述”、“评论日期”);
})
$(“#排序(审核)表决”)。单击(函数(){
出版物分类活页夹(“评论、投票总数”、“描述”、“评论、投票”);
})
$(“#排序_子项_总计”)。单击(函数(){
出版物分类活页夹(“更新、回复数量”、“说明”、“儿童总数”);
})
}

您确定问题不在交易功能上吗?这可能会弄乱你的代码。当我通过firebug控制台运行transition和librarySorter时,我没有发现明显的错误。所以我的猜测是否定的。您是否尝试过运行该方法或更改顺序?不幸的是,librarySorter取决于转换。过渡呈现“排序子项总数”、“排序审查投票”等链接。没有这些链接,librarySorter就没有必要的ID。这可能是时间问题吗?如果
transition
具有任何异步行为,则可能是
librarySorter
librarySorter
完成其工作之前正在运行。大概
librarySorter("User", "tbaron");
function librarySorter(library_type, id){
  function publication_sort_binder(type, order, name){
    $("#overview_table").animate({opacity: 0}, 400);
    $("#sort_method").html(type+' '+order);
    var url = library_type == "User" ? '/users/'+id+'/owned_publications' : '/groups/'+id+'/overview_sort'
    $.ajax({
      type: 'GET',
      data: {'function':type+' '+order},
      url: url,
      success: function() {
        $("#publication_sort_arrow").remove();
        var arrow = (order == 'ASC') ? '&darr;' : '&uarr;';
        $('#sort_'+name).unbind("click").click(function() {
          publication_sort_binder(type, (order == 'ASC') ? 'DESC' : 'ASC', name);
      }).append("<span id='publication_sort_arrow'> "+arrow+"</span>");
      }
    });
  }
  $('#sort_title').click(function() {
    publication_sort_binder("publications.title", "DESC", "title");
  })
  $('#sort_author').click(function() {
    publication_sort_binder("contributors.name", "DESC", "author");
  })
  $('#sort_review_date').click(function() {
    publication_sort_binder("reviews.created_at", "DESC", "review_date");
  })
  $('#sort_review_vote').click(function() {
    publication_sort_binder("reviews.votes_sum", "DESC", "review_vote");
  })
  $('#sort_children_total').click(function() {
    publication_sort_binder("updates.replies_count", "DESC", "children_total");
  })
}