Como definir e desmarcar um cookie usando jQuery, por exemplo, crie um cookie nomeado test
e defina o valor como 1
?
fonte
Como definir e desmarcar um cookie usando jQuery, por exemplo, crie um cookie nomeado test
e defina o valor como 1
?
Atualização em abril de 2019
O jQuery não é necessário para leitura / manipulação de cookies, portanto, não use a resposta original abaixo.
Acesse https://github.com/js-cookie/js-cookie e use a biblioteca que não depende do jQuery.
Exemplos básicos:
// Set a cookie
Cookies.set('name', 'value');
// Read the cookie
Cookies.get('name') => // => 'value'
Veja os documentos no github para detalhes.
Veja o plugin:
https://github.com/carhartl/jquery-cookie
Você pode então fazer:
$.cookie("test", 1);
Deletar:
$.removeCookie("test");
Além disso, para definir um tempo limite de um determinado número de dias (10 aqui) no cookie:
$.cookie("test", 1, { expires : 10 });
Se a opção expirar for omitida, o cookie se tornará um cookie de sessão e será excluído quando o navegador sair.
Para cobrir todas as opções:
$.cookie("test", 1, {
expires : 10, // Expires in 10 days
path : '/', // The value of the path attribute of the cookie
// (Default: path of page that created the cookie).
domain : 'jquery.com', // The value of the domain attribute of the cookie
// (Default: domain of page that created the cookie).
secure : true // If set to true the secure attribute of the cookie
// will be set and the cookie transmission will
// require a secure protocol (defaults to false).
});
Para ler novamente o valor do cookie:
var cookieValue = $.cookie("test");
Você pode especificar o parâmetro path se o cookie foi criado em um caminho diferente do atual:
var cookieValue = $.cookie("test", { path: '/foo' });
ATUALIZAÇÃO (abril de 2015):
Conforme declarado nos comentários abaixo, a equipe que trabalhou no plug-in original removeu a dependência do jQuery em um novo projeto ( https://github.com/js-cookie/js-cookie ) que possui a mesma funcionalidade e sintaxe geral que a versão do jQuery. Aparentemente, o plugin original não vai a lugar algum.
$.removeCookie('nameofcookie', { path: '/' });
Não é necessário usar o jQuery particularmente para manipular cookies.
Do QuirksMode (incluindo caracteres de escape)
Dê uma olhada em
fonte
Você pode definir os cookies como
Você pode obter os cookies como
E, finalmente, você pode apagar os cookies como este
Espero que ajude alguém :)
EDITAR:
Se você deseja definir o cookie para todo o caminho / página / diretório, defina o atributo path para o cookie
Obrigado vicky
fonte
é
,北
etc. Além disso, isso não funcionará para alguns caracteres especiais que não são permitidos no nome ou no valor do cookie. Eu recomendo a seguinte referência: tools.ietf.org/html/rfc6265Você pode usar um plugin disponível aqui ..
https://plugins.jquery.com/cookie/
e depois escrever um cookie faça
$.cookie("test", 1);
para acessar o conjunto de cookies
$.cookie("test");
fonte
Aqui está o meu módulo global que eu uso -
fonte
Certifique-se de não fazer algo assim:
Então, se o cookie não existir, o depurador retornará uma mensagem inútil como ".cookie not a function".
Sempre declare primeiro e depois faça a divisão após verificar se há nulo. Como isso:
fonte
}
que está faltando ou faltam várias linhas de código?Aqui está como você define o cookie com JavaScript:
o código abaixo foi retirado de https://www.w3schools.com/js/js_cookies.asp
agora você pode obter o cookie com a função abaixo:
E, finalmente, é assim que você verifica o cookie:
Se você deseja excluir o cookie, defina o parâmetro expires como uma data passada:
fonte
Um exemplo simples de conjunto de cookies no seu navegador:
Simples, basta copiar / colar e usar este código para definir seu cookie.
fonte
jquery-1.9.0.min.js
será recarregado para todos quando o nome do arquivo for atualizadojquery-1.9.1.min.js
, caso contrário, o navegador NÃO fará uma solicitação ao servidor para verificar o conteúdo atualizado. Se você atualizar o código dentrojquery.cookie.js
sem alterar o nome do arquivo, ele NÃO poderá ser recarregado nos navegadores que já armazenaram em cache ojquery.cookie.js
recurso.jquery.cookie.js
versão sem alterar o nome do arquivo (a menos que o servidor lide com o cache usando E-Tags).Você pode usar a biblioteca no site da Mozilla aqui
Você poderá definir e obter cookies como este
fonte
Eu acho que Fresher nos deu um jeito legal, mas há um erro:
Você deve adicionar "valor" próximo a getTime (); caso contrário, o cookie expirará imediatamente :)
fonte
Eu pensei que a resposta de Vignesh Pichamani era a mais simples e mais limpa. Apenas adicionando a ele a capacidade de definir o número de dias antes do vencimento:
EDIT: também adicionada a opção 'nunca expira' se nenhum número de dia estiver definido
Defina o cookie:
fonte
Eu sei que existem muitas ótimas respostas. Frequentemente, eu só preciso ler cookies e não quero criar sobrecarga carregando bibliotecas adicionais ou definindo funções.
Aqui está como ler cookies em uma linha de javascript . Encontrei a resposta no artigo de Guilherme Rodrigues :
Isso lê o cookie nomeado
key
, agradável, limpo e simples.fonte
fonte