Rails 3 Will_Paginate与Ajax不更新部分

时间:2012-06-13 21:32:59

标签: ajax ruby-on-rails-3 response will-paginate

我正在尝试使用Pagination With Ajax中指定的will_paginate gem为我的分页添加一些ajax并且我已经达到了可以在Firebug中看到正确的HTML响应但我实际上并没有奇怪地渲染新代码。

这是我的简化代码:

索引操作

def index  
  @videos = Video.paginate :page => params[:page], :per_page =>  per_page
end

index.html.haml

#box_content{:style => "padding: 1em;text-align:center;"}
  = render "video

_video.html.haml

- @videos.each do |video|
    %iframe{:width=>"200", :height=>"150", :src=>link_src(video.link), :frameborder=>"0", :allowfullscreen =>"true"}
%div.pageinfo
    = will_paginate @videos

的application.js

$(function () {  
    $('.pagination a').live("click", function () {  
        $.get(this.href, null, null, 'script');  
        return false;  
    });  
});

index.js.erb的

$('#box_content').html("<%= escape_javascript(render("video")) %>");

当我点击will_paginate链接时,根本没有任何事情发生,如果我查看网络GET响应,我看到以下内容确实指示了新页面:

$('#box_content').html("<iframe allowfullscreen=\'true\' frameborder=\'0\' height=\'150\' src=\'http://www.youtube.com/embed/z52V60aZ7ro\' width=\'200\'><\/iframe>\n<div class=\'pageinfo\'>\n  <div class=\"pagination\"><a class=\"previous_page\" rel=\"prev start\" href=\"/?_=1339623038312&amp;page=1\">&#8592; Previous<\/a> <a rel=\"prev start\" href=\"/?_=1339623038312&amp;page=1\">1<\/a> <em class=\"current\">2<\/em> <a rel=\"next\" href=\"/?_=1339623038312&amp;page=3\">3<\/a> <a href=\"/?_=1339623038312&amp;page=4\">4<\/a> <a class=\"next_page\" rel=\"next\" href=\"/?_=1339623038312&amp;page=3\">Next &#8594;<\/a><\/div>\n<\/div>\n");

1 个答案:

答案 0 :(得分:0)

事实证明我实际上是在收到Javascript错误。我没有在我的Firebug控制台中看到它,因为Javascript被渲染为html而不是javascript。手动执行firebug控制台中的响应javascript让我看到错误。