我正在做一个练习来熟悉 cookie 的设置和删除。自然地,我把它放在了一家假面包店里。
我已经尝试按照 Hamper 模型来获取 cookie,并且能够将它们存储到控制台上。但是由于某种原因,我尝试通过 Javascript 从本地服务器中删除它们的每种方法都失败了。我尝试过 Cookies.expire()、Cookies.set((key,null)).get(key) 等。即使我重新启动服务器,它们似乎都不起作用。
为了您的方便,我在下面附上了一个 Github 存储库。
我正在做一个练习来熟悉 cookie 的设置和删除。自然地,我把它放在了一家假面包店里。
我已经尝试按照 Hamper 模型来获取 cookie,并且能够将它们存储到控制台上。但是由于某种原因,我尝试通过 Javascript 从本地服务器中删除它们的每种方法都失败了。我尝试过 Cookies.expire()、Cookies.set((key,null)).get(key) 等。即使我重新启动服务器,它们似乎都不起作用。
为了您的方便,我在下面附上了一个 Github 存储库。
confections2.js中有一个函数
document.getElementById('Order').on('click', function(){
这不是正确的语法。相反,它应该是
document.getElementById('Order').onclick = function() {
var name = document.getElementById('consumer_name').value;
Cookies.set('consumer_name', name).get('consumer_name');
var chocolate = document.getElementById('chocolate').value;
Cookies.set('chocolate', chocolate).get('chocolate');
var sugar = document.getElementById('sugar').value;
Cookies.set('sugar', sugar).get('sugar');
var lemon = document.getElementById('lemon').value;
Cookies.set('lemon', lemon).get('lemon');
}
然后在 index.html 中更改
<input type="button" value="Reset" onclick="clearCookies();">
然后更改 javascript 函数 - 包括重新加载以及函数名称。似乎 clear() 没有结果:(
function clearCookies(){
Cookies.set('consumer_name', null);
Cookies.set('chocolate', 0);
Cookies.set('lemon',0);
Cookies.set('sugar',0);
location.reload();
};
它将值重置为 null 和 0。但它实际上并没有删除 cookie。你可以这样修改——
function clearCookies(){
// Cookies.set('consumer_name', null);
// Cookies.set('chocolate', 0);
// Cookies.set('lemon',0);
// Cookies.set('sugar',0);
delete_cookie('consumer_name');
delete_cookie('chocolate');
delete_cookie('lemon');
delete_cookie('sugar');
location.reload();
};
function delete_cookie(name) {
document.cookie = name +'=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}