2012-04-22 2 views
5

私はMVC3アプリケーションを構築していますが、いくつかのページでは、ユーザがページから離れて移動するときにはほとんど何もしません。例えばasp.net mvc3でページを閉じる(またはアンロード)を検出する

ユーザーがページをX上にあり、私はアクションA、Bを実行する必要がある他のリンクをクリックした場合、C

私がこれまでにフィルタを使用して、ユーザーが他のページに移動するかどうかを検出している実装

これは、ユーザーが別のタブでページXのリンクを開いた場合を除き、機能します。すなわち、ページXはまだ開いているが、ユーザは別のページおよびアクションA、B、Cにナビゲートして実行したことになる。これは、ページXがまだ開かれているので起きないと考えられます。

ページXでもページクローズを検出する方法があるので、ページが閉じられたりアンロードされたときにしかアクションを実行しないのだろうか?

+0

セッションが開いているセッションをトラッキングするだけではどうですか。 –

+0

うーん...しかし、私はまだページが閉じているときに検出の問題があります。それは私の主な問題です。私はページクローズを検出する方法についてはあまりよく分かりません。 – keshav

答えて

5

フロントエンドからこれを実現するために、jQueryの.unload機能をajax投稿と組み合わせて使用​​できます。

$(window).unload(function() { 
//ajax post to controller action 
$.ajax({ 
     type: 'POST', 
     url: '/Controller/Action', 
     data : { param1 : "value1", param2: "value2" }, 
     dataType: 'html', 
     success: //do what needs to be done here, alert? 
    }); 
}); 
関連する問題