0

在我的 PHP 站点中,当用户将某些东西添加到他们的购物车时,我会触发 URL 更改以在页面上创建一些函数和触发器:

原始网址

/category/product/10

新网址

/category/product/10#addtocartbutton

网址变成

/category/product/10?x=1

方法:

/category/product/10
/category/product/10#addtocartbutton (user clicks an onclick href to submit form)
/category/product/10?x=1 (the form adds the item to the session and appends this URL querystring)

问题是当他们按下 bac b

4

3 回答 3

2

Javascript,使用location.replace而不是location.href = 'new location'
看一下:http
://www.roseindia.net/javascript/javascript-location-replace.shtml ->location.replace将用新地址替换当前地址 -> 当用户单击返回按钮时 -> 错误不会发生。

于 2012-09-07T09:03:29.567 回答
0

或者尝试使用pushState。你应该能够根据你的需要操纵你的历史。

于 2012-09-07T09:02:01.923 回答
0

一个好主意是让 add 函数将您重定向回产品页面而不显示查询字符串。由于我不知道您是如何编写添加控制器的,因此很难为您提供确切的代码示例...

编写 PHP 控制器以添加如下内容:

function add_to_cart()
{
  add $_GET['x'] to session;
  redirect back to product page;
}
于 2012-09-07T09:04:43.887 回答