2009-12-23 8 views
1

Je souhaite déclencher une action de mon contrôleur de rails lorsque l'utilisateur quitte une page. Je suis tombé sur l'événement window.beforeunload, mais je ne sais pas comment je peux appeler la fonction de mon contrôleur de la vue. J'ai quelque chose comme ceci:Appel d'une fonction de rails à partir de javascript

 


    //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; 


 

quelqu'un peut me aider? Merci!

Répondre

4

On dirait que vous avez besoin d'une requête AJAX ici. remote_function peut être utile ici. Quelque chose comme:

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

Cela fait l'affaire en effet. Mais un problème supplémentaire. Quand je vais à une autre page, ma méthode est appelée, mais j'obtiens une erreur parce qu'il n'y a pas de vue correspondante. Mais tout ce que je veux, c'est qu'il fasse l'action et qu'il passe à l'action sur laquelle on a cliqué. Une solution à cela? – Ignace

Questions connexes