2010-11-08 5 views
0

Je suis nouveau à la programmation et essaye d'écrire une fonction javascript pour définir une valeur de cookie quand un bouton contextuel est cliqué.Fonction Javascript pour définir la valeur de cookie

Dans home.aspx

<input id="btnCanOK2" type="button" value="Close" class="popupButton" runat="server" onclick="return btnClose_Click" /> 

pour ce bouton, je l'ai écrit une fonction javascript:

function btnClose_Click() 
{ 
document.cookie = 'cookieName=closed; value=dontshowagain'; 
} 

En page merchant.login

Dans le code derrière de l'autre page , il doit vérifier si la valeur du cookie est définie sur "dontshowagain". Si elle est définie sur la valeur, la fonction ne doit plus afficher le popup. Ma tâche n'est pas de montrer le popup dans différentes pages. S'il est fermé une fois, il doit cesser d'être affiché jusqu'à ce que le navigateur soit fermé.

if (Request.Cookies["closed"] == null) 
{ 
ModalPopupextender2.Show(); 
} 
else if(Request.Cookies["closed"].Tostring() == "dontshowagain") 
{ 
ModalPopupextender2.Hide(); 
} 

Où suis-je mal? Maintenant valeur Cookie est toujours null :(

Merci beaucoup à l'avance

Répondre

1

Vous ne définissez pas cookieName et value séparé Le nom du cookie est ce qui est sur le côté gauche du =:..

document.cookie= 'closed=dontshowagain;path=/'; 

(le paramètre de chemin de fuite en option assure le cookie est envoyé à chaque page sur le site, pas seulement la section, il a été mis en.)

+0

+1 assurez-vous de vérifier le chemin param @bobince dit (par exemple vous pouvez voir empiler rflow cookies sur chat.stackoverflow mais pas sur stackexchange car c'est un autre domaine). Utilisez également un plugin pour vérifier que les cookies sont là (firecookie ou intégré sur chrome/safari) –

+0

@Pablo: en fait l'histoire avec 'domain' est un peu plus compliquée. SO ne définit pas de 'domain', donc ses cookies ne devraient pas être visibles sur chat.SO. Mais ils sont dans IE en raison de la gestion différente de la portée par défaut de ce navigateur. – bobince

Questions connexes