2011-06-23 92 views
1

我已經閱讀過這個topix:「http://stackoverflow.com/questions/4820637/how-do-i-perform-an-ajax-request-to-the-create-加載頁面的動作軌道「,但它沒有迴應的問題..Rails 3 ajax動畫加載頁面

我想做一個加載動畫到我的rails 3應用程序導致服務器需要時間來發送電子郵件和做一些其他的計算,所以用戶體驗不太好...

我已閱讀本教程:http://www.marketingformavens.com/blog/create-a-page-loading-animation-with-ruby-on-rails-and-ajax,但它的rails2(遠程功能不再存在了軌道3)。

我不知道是否有人能告訴的方式,我應該這樣做: - >其加載到屏幕時,操作上的用戶點擊(如創建或更新)一個漂亮的動畫

感謝的很多。

希望找到一個答案......

回答

3

如果我理解你希望在你的行動,它是Ajax完成加載動畫。只需使用jQuery的API來調用Ajax的控制器操作和使用回調停止你的動畫:

$("#myaction").click(function(){ 
     //write your animation code here 

     $.ajax({ 
     url: "http://localhost:3000/yourcontrolleraction", 
     dataType: "json", 
     type: "POST", 
     processData: false, 
     contentType: "application/json", 
     data: yourdata 
     success: function(){ 
      //stop your animation here 
     } 
     }) 
    }); 

更多關於使用jQuery Ajax和Rails的,我建議你讀這個優秀的帖子:http://blog.project-sierra.de/archives/1788

+0

我嘗試,我讓你知道它是否有效! 無論如何,謝謝你的答案! –

+0

最後我沒有得到它的工作... 其實我在JavaScript的東西一個新手,這可能是爲什麼... 我做了什麼: 軌生成腳手架測試名稱:字符串內容:字符串 耙分貝:遷移 的gedit應用程序/視圖/測試/ new.html.erb 貼[代碼] $( 「#創建」)點擊(函數(){ \t警報() $阿賈克斯({。 「測試!」 url:「http:// localhost:3000/tests/create」, dataType:「json」, type:「POST」, processData:false, contentType:「application/jso n「, data:yourdata 成功:function(){ // stop your animation here } }) }); –

+0

我需要你所有的視圖代碼來回答。你有一個「;」在url參數之後,它不應該在那裏。 –