我有一個Rails 3應用程序,它使用resque運行長在後臺運行的作業,我希望到另一個頁面刷新使用jQuery div元素中的Rails 3應用程序
上創建一個視圖的結果目前我有這種情況下工作
Resque運行一項工作,並將信息寫入數據庫(更新信息條目)。一旦工作完成它更新數據庫條目中的一個,即它設置完整= 1
DB模式是
create_table "refreshes", :force => true do |t|
t.string "name"
t.string "info"
t.integer "complete"
t.datetime "created_at"
t.datetime "updated_at"
end
在該應用中的另一頁面視圖將顯示(完成與0值創建)數據庫條目通過調用控制器並在頁面上顯示最新數據,如果數據庫中的完整值不等於1,則此視圖具有插入標準JavaScript刷新元素的邏輯片段。
view.html。 erb
<% if @refreshes.complete == 0 %>
<meta http-equiv='refresh' content='5'>
<%end%>
<div id="data">
<p>
<b>Name:</b>
<%= @refreshes.name %>
</p>
<p>
<b>Info:</b>
<%= @refreshes.info %>
</p>
</div>
控制方法
def view
@refreshes = Refresh..find(params[:id])
respond_to do |format|
format.html # view.html.erb
format.xml { render :xml => @refreshes }
end
end
這一切工作正常,但它完成時被設置爲0做一個完整的頁面重載每5秒鐘,我想要做的只是刷新顯示數據的DIV什麼(div id = data)而不刷新整個頁面。
我認爲這可以使用jQuery和一些JavaScript來完成,但我找不到一種方法來做到這一點,任何人都可以幫忙嗎?或者即使你可以點我的方向我將不勝感激 乾杯 邁克
謝謝你們,將在週末嘗試這兩個 – user891380 2012-01-27 19:52:50
接受答案,如果它幫助你解決了這個問題。 – Yogesh 2012-02-06 07:08:10