2012-07-23 86 views
3

我有一个网站为填写我网站中的表单的用户执行财务搜索服务。通过与提供商进行直接xml集成来完成搜索,此类搜索可能需要一分钟才能完成。如果用户决定在搜索完成之前离开网站,我想通知服务器。如何使用JS触发用户左侧事件事件

我用onunload js事件工作,但是,它也会在服务器完成财务搜索并将用户重定向到“Service Found”页面时触发。因此,尽管用户从服务器端重定向到“找到服务”页面,但我仍然可以为每个用户获取用户左侧站点通知。

当服务器响应并重定向到“找到服务”页面时,检测用户是否离开网页而不触发事件的最佳方式是什么?

我读了Scott Mitchell的文章“提示用户在离开页面时保存”(http://www.4guysfromrolla.com/webtech/100604-1.shtml),但是,我不能仅在用户离开网站时触发事件。

感谢您的帮助!

回答

0

你可以用AJAX发布表单吗?您将能够停用卸载处理程序。以下是它如何与jQuery一起使用的:

$('#myform').submit(function() { 
    $.post('/form-action', $(this).serialize(), function(responseText) { 
    $(window).unbind('unload'); 

    // update the page with the response 
    $('#response').html(responseText); 

    // or redirect to the result page: window.location = 'new location'; 
});