【问题标题】:How to auto-refresh a div如何自动刷新一个div
【发布时间】:2016-09-07 13:56:11
【问题描述】:

我有一个控制器和一个带有 div 的视图:

def show
  @requests = events.get_requests
end

get_requests 使用 select 返回数据库中的所有请求,我在视图中将其输出为 div:

<div class="party-block" id="requests">
  <h4><%= t '.requests' %></h4>
  <input type="button" value="<%= t '.refresh' %>" onClick="window.location.reload()" class="btn-sm btn-info">
  <% @requests.each do |r| %>
    <span class="request">
      ...

在这个 div 中,我将所有请求与其他内容一起打印出来。

我想用 JavaScript/jQuery 函数自动刷新这个 div。目前我使用按钮刷新,但是否需要重新执行控制器中的代码?

【问题讨论】:

  • 你想每隔一段时间刷新一次吗?或者你想用按钮刷新 div 但不刷新页面(异步)?
  • 如果可能的话,我需要每 2 秒刷新一次 div。我也在问自己,数据库每 2 秒刷新一次是不是太重了
  • 欢迎来到 Stack Overflow。我们不关心您的专业知识或主要语言,我们需要经过深思熟虑的问题。如果您的英语有困难,我们将帮助您使问题更容易理解。我强烈建议阅读“How to Ask”中的链接页面,尤其是catb.org/esr/faqs/smart-questions.html。它很长,但对于如何在未来提出问题有非常好的提示。

标签: javascript jquery html ruby-on-rails ruby


【解决方案1】:

JavaScript 中有一个名为 setInterval 的函数,可让您安排一个函数在每个时间间隔执行。

http://www.w3schools.com/js/js_timing.asp

setInterval(function() { 
  console.log("Hi There");
  }, 1000);

【讨论】:

  • 问题是我的控制器中有@requests 和我的视图中的显示。我需要在一个视图中融合它吗?
  • 我会将整个事情转换为 ajax 调用并在 javascript 而不是 rails 视图中进行更新
猜你喜欢
  • 2013-03-17
  • 2016-06-22
  • 2020-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-02
  • 2011-03-06
  • 1970-01-01
相关资源
最近更新 更多