2013-02-12 55 views
0

我希望每秒更新一次頁面的一部分。我知道我可以在JavaScript中使用setInterval,但如果我想要在我的Rails代碼中內置一些邏輯,該怎麼辦?這裏有一個簡單的抽象:通過間隔觸發動作更新頁面的一部分

守則控制器:

def lookup_something 
    @stuff_to_display = [code to look up a set of records] 
end 

然後在視圖:

<body>  
<div id="update_this"></div>  
</body> 

我想的東西運行動作每秒和更新div以上。我知道我之前在一個相對簡單的代碼塊中完成了這項工作,但是我無法找到如何在我的生活中再次做到這一點。

+2

這取決於on Rails的版本。在較早的版本中,有'periodic_call_remote',但在最近的版本中這已被刪除。我建議檢查這個問題:http://stackoverflow.com/questions/3661967/rails-3-equivalent-for-periodically-call-remote – 2013-02-12 05:09:59

+0

該鏈接做了伎倆。 periodic_call_remote是我過去使用過的,但似乎在Rails 3中不推薦使用。 – 2013-02-12 05:39:04

回答

1

如果你願意使用jQuery的$就調用非常簡單: 從http://api.jquery.com/jQuery.ajax/

setInterval(function() { 
    $.ajax({ 
     url:"url/to/lookup_something", 
     success:function(result){ 
      // do something here to 
      // $("#update_this") 
     } 
    }); 
}, 1000); // every second 
相關問題