保存javascript cookies站点基础,而不是aspx页面明智

时间:2013-09-06 11:48:27

标签: javascript jquery asp.net cookies

我想保存一个cookie,我想继续在网站上更新它,而不是页面更新。

目前我的导航框中有5个标题,对所有页面和点击标题都是静态的;我正在将标题文本保存到cookie并在每个页面上选择标题检索。 但问题是,cookie是在页面上保存而不是站点方式。每个页面都在创建一个新的cookie。

以下代码,

function setCookie(c_name,value,expdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + expdays);
var c_value=escape(value) + ((expdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
}


function getCookie(c_name)
{
var c_value = document.cookie;
var c_start = c_value.indexOf(" " + c_name + "=");
if (c_start == -1)
  {
  c_start = c_value.indexOf(c_name + "=");
  }
if (c_start == -1)
  {
  c_value = null;
  }
else
  {
  c_start = c_value.indexOf("=", c_start) + 1;
  var c_end = c_value.indexOf(";", c_start);
  if (c_end == -1)
    {
    c_end = c_value.length;
    }
  c_value = unescape(c_value.substring(c_start,c_end));
  }
return c_value;
}

 $(function($) {

 var menuClickedOld1 = getCookie("SPLeftNavigation");

 if(menuClickedOld1!=null && menuClickedOld1!=""){
 $('li:contains('+menuClickedOld1+') ul').show();
 alert("from cookie "+menuClickedOld1);
 }
 else{
 alert('No values');
 }

 $('.arrw').click(function() { 
 var lname=$(this).parent().text();// selected header name;
 setCookie("SPLeftNavigation",lnName,1);
   });

 });

我如何解决这个问题,我已经花了一天时间......就像生产一样。

谢谢!

1 个答案:

答案 0 :(得分:0)

哈哈,这真的很有趣。

实际上,Cookie默认以页面方式存储,如果您想将其保存在特定网站或域中,请按以下方式使用:

'SPCookie=myheader; expires=Sat, 7 Sept 2013 20:47:11 UTC; path=/'

完成!