2009-12-23 70 views
1

我想在用戶離開頁面時從我的rails控制器觸發一個動作。 我倒在window.beforeunload事件上,但我不知道如何從視圖中調用我的控制器中的函數。 我有這樣的事:從javascript調用rails功能

 


    //function that checks if someone leaves the page 
    //if so, send mail to admin with unconfirmed reservation 
function goodbye(e) { 
    //:action => do_something 

} 
window.onbeforeunload= goodbye; 


 

有人可以幫助我嗎? 謝謝!

回答

4

看起來你需要一個AJAX請求。 remote_function在這裏可以很方便。例如:

function goodbye(e) { 
    <%= remote_function :url => { :action => "do_something" } %> 
} 
+1

確實有這個技巧。 但額外的問題。當我進入另一個頁面時,我的方法被調用,但由於沒有相應的視圖存在,所以出現錯誤。 但我想要的是,它執行操作,然後進入被單擊的操作。 對此的任何解決方案? – Ignace 2011-02-23 11:57:27