在表单提交上显示加载消息 - 后退按钮问题

时间:2010-12-13 15:05:29

标签: jquery back-button

我在提交表单时显示带有加载消息和图像的div:

$("#some_form").submit(function(){
  $("#some_form #loading").show();
});

这符合我的预期。但是,如果您使用后退按钮返回,则加载div仍然可见,因为浏览器尚未重新加载页面。

当使用后退按钮时,是否有可用于隐藏加载div的浏览器事件?或许我整个事情都走错路了?

感谢您的帮助!

3 个答案:

答案 0 :(得分:2)

由于您正在显示“加载”图像,因此您可能正在使用AJAX。对?你应该使用ajax-start和ajax-complete events =)

编辑: 你可以尝试:

 window.onbeforeunload = function() {

     $("#some_form #loading").hide();

 }

或者这个:

http://www.bajb.net/2010/02/browser-back-button-detection/

答案 1 :(得分:1)

如何使用标题Cache-Control: no-cache告诉浏览器不要缓存原始页面?在历史记录中导航时应强制它重新加载页面。

window.onunload怎么样?

答案 2 :(得分:0)

你可以添加

<script>
$(function() { 
    $("#some_form #loading").hide(); 
});
</script>
在你脑海里。因此,只要页面完全加载,它就会隐藏div。据我所知,当按下后退按钮时,这也应该有效。