2011-03-14 105 views
2

我遇到了一个非常烦人的问题,我有一个不可能的时间解决。问题是,由于未知原因,Chrome浏览器没有在其历史记录中注册页面,因此当用户单击后退按钮时,它将返回2页而不是1.铬后退按钮跳过页

页面进程如下:

Search-form.aspx - > searching.aspx - > search-results.aspx - > result.aspx

更具体地说,当我到达chrome中的result.aspx页面时,它会跳过search- results.aspx并跳转到searching.aspx。

想法?

+0

是否有任何重定向发生在search-results.aspx?具体在page_load? – Chev 2011-03-14 18:46:55

+0

不,Searching.aspx在搜索返回数据表后使用Response.Redirect将浏览器定向到search-results.aspx。 Search-Results.aspx包含一个带有超链接的转发器,该链接指向results.aspx页 – RandomWebGuy 2011-03-14 18:57:31

+0

在searc.aspx上的response.redirect位于何处? Page_Load中? Button_Submit? – Chev 2011-03-14 18:59:31

回答

0

您在searc.aspx上的page_load正在将浏览器立即发送到另一页。它唯一向用户提供的是一个加载图形。没有链接被点击进入下一页,Chrome正在考虑把searching.aspx作为最后一个最相关的步骤。

考虑使用JavaScript(我更喜欢jQuery)来呈现加载信息并完全切出searched.aspx。在search-results.aspx中,使用javascript对服务器执行异步(AJAX)调用以获取结果。虽然结果正在返回,但您可以显示一张漂亮的小图片,告诉他们在结果加载时耐心等待。

如果javascript不是一个选项,那么考虑让浏览器的加载函数足够。我曾尝试在过去使用中间页面来做类似的事情,但这只是一团糟。不要在那个网上纠结。要么做一些异步加载,要么让浏览器处理告诉他们他们的页面正在加载。大多数人会习惯于在点击搜索按钮后等待页面加载时间稍长。

编辑如果您想要一个快速简单的解决方案,请在searching.aspx上放置一个按钮。使按钮做页面重定向。通过这种方式发生实际的表单提交,并且chrome应该在其历史记录中注册下一页。您可以使用OK按钮使search.aspx成为快速消息。他们点击确定,然后离开你。