在rails 3.1中每10秒重新加载一页

我有一个rails 3.1rc4应用程序,我想在每10秒后更新我的index.html.erb文件中的div。 如果可以通过jquery完成,我不会这样做吗? 有一个更新方法,但我不,如果它只是原型。 任何样本都会很棒

将您的问题分解为子任务,这是您必须处理的问题:

  1. 检索(HTTP GET)html
  2. 使用检索到的html更新div
  3. 每10秒重复步骤1和2

对于1,请查看jquery的.get

Description: Load data from the server using a HTTP GET request.

2,查看jquery的.html

 Get the HTML contents ... or set the HTML contents of every matched element. 

对于3,请查看setInterval

 Summary Calls a function or executes a code snippet repeatedly, with a fixed time delay between each call to that function. Returns an intervalID. 

最终解决方案

HTML代码:

 

Javascript代码

  function update() { $.get('/', function(data) { $('#divToChange').html(data); }); } $(document).ready(function($){ window.setInterval('update()', 10*1000); }); 

我假设你熟悉javascript和AJAX(如果你需要的话)。

这段javascript使用本机setInterval函数,该函数每10秒调用一次updateDiv函数。

 var timer = setInterval(updateDiv, 10000); function updateDiv() { // do update } 

编辑:没有jQuery的完整示例;