【问题标题】:Reloading partial in an rails app在 Rails 应用程序中重新加载部分
【发布时间】:2012-05-19 07:53:57
【问题描述】:

我想在我的 rails 应用程序的“新”视图上每 3 秒重新加载一次部分。

我的new.html.erb有这个

<h1>Controller#new</h1>
This is my static content
<%= render partial: 'dynamic' %>
More Static content

如何每 3 秒重新加载这个部分?我必须为此使用不显眼的javascript吗?如何通过 ujs 实现呢?

【问题讨论】:

    标签: javascript ruby-on-rails ajax partial unobtrusive-javascript


    【解决方案1】:

    将部分放在 div 中

       <div class="dynamic"><%= render partial: 'dynamic' %></div>
    

    你可以像这样使用jquery来做到这一点

           $(document).ready(
             function() {
              setInterval(function() {
                $('.dynamic').load('/controller_name/action_name');
            }, 3000);
        });
    

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

             def action_name
                render :partial => "directory_name/dynamic"
             end
    

    它一定会起作用的…………

    【讨论】:

    • 谢谢,请注意这很有帮助
    • 如何将变量传递给部分?这不起作用:渲染部分:“课程/导航按钮”,current_slide:(at)current_slide,课程:(at)course
    猜你喜欢
    • 1970-01-01
    • 2011-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-18
    • 2018-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多