我想在我的頁面加載時觸發一個AJAX請求。我猜這是最好的從我的控制器。如何加載部分內部的部分?
首先,我打開一個新的網頁..
def text_tabs_nav
end
這個頁面有通過AJAX兩個不同的泛音加載的能力。我想在默認情況下加載其中的一個。
所以我想,也許這個..
def text_tabs_nav
respond_to do |format|
format.html
format.js
end
end
在我text_tabs_nav.js我寫了這個:
== $("#content").html("#{ escape_javascript(render :partial => 'about_us') }");
但JavaScript的沒有load..I使用相同的JavaScript來加載頁面後加載的東西,它工作正常。
任何人都知道如何加載部分(text_tabs_nav),與默認的AJAX部分加載(about_us)?
謝謝!
香草?嗯..我的文件雖然叫做text_tabs_nav.js。我將我的控制器切換到format.js.erb,並將該文件轉換爲該文件,但未呈現。返回未定義的方法'erb'for# –
Trip
2010-07-26 19:41:20
我沒有關注...您的文件應該叫做'text_tabs_nav.js.erb'。否則,rails會認爲它只是一個普通的javascript文件,沒有任何ruby可以處理。行'format.js'保持不變。無論何時渲染任何東西,它都會查找沒有擴展名的文件(例如「text_tabs_nav.js」),或者使用任何模板擴展名(.erb,.haml)。 – 2010-07-26 19:52:39
啊..我忘了提及我正在運行haml/sass。哪一個更接近,我將它重命名爲'text_tabs_nav.js.haml'。所以,如果我從我的控制器中刪除format.html,它將加載到正確的內容中。但有了它,它實際上並沒有將AJAX加載到頁面中。 – Trip 2010-07-26 19:58:24