-1

我们的结帐流程遇到了一个奇怪的问题。可以这么说:-

  • 用户在他们的购物篮中添加了一些产品
  • 单击以查看购物篮,然后删除这些产品 然后使用浏览器 <- 后退按钮导航到上一个产品页面
  • 然后他们将另一个产品添加到购物篮中,这会导致整个网站的布局崩溃,就好像加载菜单或产品列表的代码都没有被触发,例如

在此处输入图像描述

我认为这可能与我们在篮子上使用 AJAX 有关,所以我尝试了在此处发布的建议,向页面添加了一个隐藏的表单元素,这实际上解决了 chrome 中的问题,但在 Firefox 中,页面陷入了无限循环,

有没有人遇到过用户导航回以前状态的类似问题?我完全不知道接下来要尝试什么

谢谢你的帮助

4

1 回答 1

0

好吧,我设法解决了这个问题。问题是,当用户通过历史导航回到以前的产品页面时,它被视为回发,因此没有任何用于填充页面控件的代码被触发,因为它位于!Page.IsPostBack块内......

由于我找不到更好的方法来确定页面何时损坏,我只是在导航选项卡中阅读并检查它们是否为空,这表明页面未正确加载,然后我们刷新,例如

  <script type="text/javascript">
    $(function() {
        $("#tabs-nav ul li").each(function() {
            if (!$(this).children().text() || /^\s*$/.test($(this).children().text())) {
                location.reload();
            }
        });
    });
</script>

它不漂亮,但它完成了工作

谢谢

于 2013-02-01T17:05:10.773 回答