99 votes

Pouvez jQuery lire/écrire les cookies dans un navigateur ?

Exemple Simple: je veux avoir quelques éléments sur une page (comme les divs ou les lignes de la table), et je veux permettre à l'utilisateur de cliquer sur eux pour les sélectionner. Cela semble assez facile en jQuery. Pour enregistrer les éléments d'un utilisateur clique sur avec pas de serveur-côté post le dos, je pensais à un cookie serait un moyen simple d'obtenir ce fait.

  1. Cette hypothèse est qu'un cookie est OK dans ce cas, correct?
  2. Si elle est correcte, l'API jQuery, disposer d'un moyen de lecture/écriture des informations de cookie qui est plus agréable que le défaut Api JavaScript?

52voto

adam Points 1121

La valeur par défaut JavaScript « API » pour définir un cookie est aussi simple que :

Utiliser le plugin jQuery de cookie comme :

18voto

Steve Moyer Points 4312

Vous aurez besoin du plugin cookie, qui propose de nombreuses signatures supplémentaires à la fonction cookie.

$.cookie('cookie_name', 'cookie_value') magasins un témoin transitoire (n'existe que dans cette session du champ d'application, tout $.cookie('cookie_name', 'cookie_value', 'cookie_expiration") crée un cookie qui va durer à travers des sessions - voir http://www.stilbuero.de/2006/09/17/cookie-plugin-for-jquery/ pour plus d'informations sur le JQuery cookie plugin.

Si vous souhaitez définir des cookies qui sont utilisés pour l'ensemble du site, vous aurez besoin d'utiliser JavaScript comme ceci:

document.cookie = "name=value; expires=date; domain=domain; path=path; secure"

7voto

SeanDowney Points 5299

Pour répondre à votre question, oui. Les autres ont répondu à cette partie, mais il semble aussi que vous vous demandez si c'est la meilleure façon de le faire.

Il serait sans doute dépendent de ce que vous faites. En général, vous disposez d'un utilisateur, cliquez sur ce que les articles qu'ils veulent acheter (commande par exemple). Ensuite, ils auraient frappé ou d'acheter un bouton checkout. Ensuite, la forme serait de les envoyer à une page et de traiter le résultat. Vous pourriez faire tout cela avec un cookie, mais je pense qu'il serait plus difficile.

Vous souhaitez peut-être envisager d'afficher votre deuxième question dans un autre sujet.

5voto

iAn Points 3090

Jetez un oeil à la Cookie Plugin pour jQuery.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X