1

我有一个如下所示的按钮:

<%= link_to "Join", "#", :id => "joinleave", :class => "buttonrefresh small join button expand", :'project-id' => @project.id %>

然后,当它被点击时,我会调用 jQuery。它会更改按钮和按钮功能中的文本以及所有这些,但我需要它来将 Ruby 中的部分内容重新渲染为<div>.

<div class="content" id="peoplerender" data-section-content>
  <%= render 'people' %>
</div>

.js 位于“assets/javascript”中,视图位于“apps/views/projects”中。部分也位于同一文件夹中,并且在页面加载时可以正常工作。我只需要在按下按钮时更新它。

4

1 回答 1

0

使用 jquery,你有它的 AJAX 返回更新$(".content"),如下所示:

你的控制器

def show

  @people = whatever_people_logic_you_already_have

  respond_to do |format|
    format.html
    format.json do
      render :json => @people.to_json, :layout => false
    end
  end
end

你的 AJAX

$.ajax({
   url: your_url_to_your_show,
   type: 'get',
   success: function(data) {
     console.log(data);
     $(".content").html(data);
   }
});

我假设您的控制器正在发回正确的信息。使用console.log来识别那是什么。

于 2013-07-17T18:18:58.847 回答