Rails没有通过AJAX

时间:2015-08-29 01:23:43

标签: javascript jquery ruby-on-rails ajax kaminari

我在使用Kaminari,AJAX分页和最新的轨道时遇到了一个奇怪的问题。

我看到一切都在下面完美运行,它正在进行正确的调用,生成正确的HTML和JS,但由于我不明白的原因,它不会在分页AJAX调用后更新页面。

它生成的js可以在Chrome JS控制台中剪切和粘贴,效果很好(???)

我的控制器

def show
  @facility = Facility.friendly.find(params[:id]).decorate
  @pets = @facility.pets.page(params[:page]).per(1)
  respond_to do |format|
    format.html
    format.js do
      render 'pets/pets', layout: false
    end
  end
end

宠物/ pets.js.haml

:javascript
  $('#pets').html("#{escape_javascript(render(partial: 'pets/pets', locals: {pets: @pets}))}");

宠物/ _pets.html.haml

#pets
  .row.products
    = render pets

= paginate pets, remote: true

不更新页面的原因是什么? js似乎是正确的,但如果它来自Rails,它不会排序任何效果,只有当我将它粘贴到控制台上时(同样精确的JS,从调试控制台粘贴)

如果有人可以帮助我,我真的很疯狂,而且我想解决这个问题,至少我知道问题将是99%是我的错,并且在我想要自己挂起之后:)

TIA - ngw

2 个答案:

答案 0 :(得分:0)

您似乎错过了导航<%= %>标记

:javascript $('#pets').html(<%= "#{escape_javascript(render(partial: 'pets/pets', locals: {pets: @pets}))}" %>);

答案 1 :(得分:0)

宠物应属于show.html.erb