2016-09-07 3 views
0

divの自動リフレッシュする方法:選択して私は、コントローラとのdivで表示してい

def show 
    @requests = events.get_requests 
end 

get_requests戻り、データベース内のすべての要求を、私の見解ではdivの中にI出力を:

<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では、すべてのリクエストを他のものとともに出力します。

このdivをJavaScript/jQuery関数で自動的に更新したいと考えています。当面は、ボタンを使ってリフレッシュしますが、コントローラーでコードを再実行する必要はありますか?

+0

あなたは、一定間隔でそれをリフレッシュしたいですか?または、ボタンを使ってdivをリフレッシュしたいのですが、ページをリフレッシュせずに(非同期に)したいですか? – Kumar

+0

できる場合はdivを2秒ごとに更新する必要があります。また、データベースが2秒ごとにリフレッシュするにはあまり重すぎないかどうかを尋ねていました。 – Alexandre

+0

ようこそ。私たちはあなたの専門知識や第一言語を気にしませんので、よく検討された質問が必要です。英語に問題がある場合は、問題をより理解しやすくするのに役立ちます。 "[ask]"のリンク先のページ、特にhttp://catb.org/esr/faqs/smart-questions.htmlを読むことを強くお勧めします。それは長いですが、将来どのように尋ねるかについて本当に良いヒントを持っています。 –

答えて

1

JavaScriptには、setIntervalという名前の関数があり、毎回実行する関数をスケジュールすることができます。

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

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

問題は私のコントローラに@requestsがあり、私のビューに表示されていることです。私は単一のビューでそれを融合する必要がありますか? – Alexandre

+0

私はajax呼び出しにすべてのものを変換し、レールの表示ではなくjavascriptで更新を行います –

関連する問題