Supprimer le cookie par nom?

Comment puis-je supprimer un cookie spécifique avec le nom roundcube_sessauth ?

Ne devrait pas être le suivant:

 function del_cookie(name) { document.cookie = 'roundcube_sessauth' + '=; expires=Thu, 01-Jan-70 00:00:01 GMT;'; } 

Et alors:

 <a href="javascript:del_cookie(name);">KILL</a> 

Tuez le cookie roundcube_sessauth ?

Pour supprimer un jeu de cookies, la date d' expires date de quelque chose dans le passé. Une fonction qui le ferait.

 var delete_cookie = function(name) { document.cookie = name + '=;expires=Thu, 01 Jan 1970 00:00:01 GMT;'; }; 

Ensuite, pour supprimer un cookie nommé roundcube_sessauth suffit de faire.

 delete_cookie('roundcube_sessauth'); 

Vous devez définir le chemin sur lequel existe un cookie pour vous assurer que vous supprimez le vrai

 function set_cookie(name, value) { document.cookie = name +'='+ value +'; Path=/;'; } function delete_cookie(name) { document.cookie = name +'=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;'; } 

Si vous ne spécifiez pas le chemin d'accès, le navigateur définit le cookie par rapport à la page que vous êtes actuellement activé. Par conséquent, si vous supprimez un cookie sur une page différente, d'autres cookies continuent leur existence.

Modifier en fonction du commentaire de @Evan Morrison.
Soyez conscient que, dans certains cas, pour identifier le bon cookie, le paramètre de Domain est également requis.
Habituellement utilisé comme Domain=.yourdomain.com
La période devant un nom de domaine signifie que ce cookie peut exister sur n'importe quel sous-domaine ( www aussi compte sous-domaine).

En outre, comme mentionné dans la réponse de @ RobertT, les cookies HttpOnly ne peuvent pas être supprimés avec JavaScript sur le côté client.

Je ne suis pas vraiment sûr si c'était la situation avec la version Roundcube à partir de mai '12, mais pour le moment actuel, la réponse est que vous ne pouvez pas supprimer le cookie roundcube_sessauth de JavaScript, car il est marqué comme HttpOnly . Et cela signifie qu'il n'est pas accessible à partir du code côté client JS et ne peut être supprimé que par un script côté serveur ou par une action directe de l'utilisateur (via une mécanique de navigateur comme un débogueur intégré ou un plugin).

// si passé exMins = 0, il supprime dès qu'il l'a créé.

 function setCookie(cname, cvalue, exMins) { var d = new Date(); d.setTime(d.getTime() + (exMins*60*1000)); var expires = "expires="+d.toUTCString(); document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; } setCookie('cookieNameToDelete','',0) // this will delete the cookie.