在rails应用程序中重新加载部分内容

Mic*_*ark 9 javascript ajax ruby-on-rails unobtrusive-javascript partial

我想在我的rails应用程序中的'new'-view上每3秒重新加载一个部分.

我有这个 new.html.erb

<h1>Controller#new</h1>
This is my static content
<%= render partial: 'dynamic' %>
More Static content
Run Code Online (Sandbox Code Playgroud)

如何每隔3秒重新加载一次?我必须使用不引人注目的JavaScript吗?我怎样才能通过ujs实现这一目标?

Kas*_*ail 20

把部分放在div中

   <div class="dynamic"><%= render partial: 'dynamic' %></div>
Run Code Online (Sandbox Code Playgroud)

您可以使用这样的jquery来完成它

       $(document).ready(
         function() {
          setInterval(function() {
            $('.dynamic').load('/controller_name/action_name');
        }, 3000);
    });
Run Code Online (Sandbox Code Playgroud)

现在刷新部分控制器操作以加载新内容

         def action_name
            render :partial => "directory_name/dynamic"
         end
Run Code Online (Sandbox Code Playgroud)

它一定会工作.........