detecting page close (or unload) in asp.net mvc3
asp.net, asp.net-mvc-3, httprequest
Solution
You can use jQuery's `.unload` functionality paired with an ajax post to accomplish this from the front end.
$(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?
});
});
Problem
I am building a MVC3 app and on few pages I need to perform few action when the user navigates away from the page. For example if the user is on page X and clicks any other link I need to perform actions A,B,C The implementation I have so far uses filters and detects if the user navigates to any other page from page X. This works except if the user open the link on page X in anther tab. i.e the page X is still open but the user has navigated to another page and actions A, B, C and performed. This not suppose to happen since page X is still open. I was wondering if there is way to detect page close even on page X so I only perform the action when the page is closed or unloaded ?