【发布时间】:2016-11-27 04:53:54
【问题描述】:
我正在用 HTML、PHP 和 JS 编写购物车。我有一个onclick 函数,它可以删除 cookie 并刷新页面,从而将商品从购物车中删除。这在 Chrome 中有效,并且 cookie 被删除。我在 Firefox 中有相同的代码,但它不起作用:cookie 没有在 Firefox 中删除。这是具有onclick 属性的元素:
echo '<button class="button" onclick="removeCart' . $x . '()">Remove from Cart</button>';
函数如下:
echo '<script>';
echo 'function removeCart' . $x . '() {';
echo 'document.cookie = "' . $itemsSpaced[$x] . '= ; expires=Thu, 01 Jan 1970 00:00:00 UTC";';
echo ' location.reload(true);';
echo '}';
echo '</script>';
为什么这在 Chrome 中有效,但在 Firefox 中无效?
【问题讨论】:
-
你是如何设置cookie的?
-
我将cookie设置在不同的页面并用JavaScript编写:
document.cookie = i + " " + item + "=" + price + "; path=/cart" -
您是否尝试在
removeCart中添加; path=/cart? -
成功了!但我不明白为什么。
-
因为设置了路径的 cookie 与没有设置路径的 cookie 不同。因此,您试图删除与您设置的 cookie 不同的 cookie。它在 Chrome 中工作基本上是 Chrome 中的一个错误 - 它不应该工作。
标签: javascript php html cookies