请大师写一个setcookie的函数,里面包括变量name,value,path,domain谢谢了

解决方案 »

  1.   

    function SetCookie(sName, sValue) 

    document.cookie = sName + "=" + escape(sValue) + "; "; 

    function GetCookie(sName) 

    var aCookie = document.cookie.split("; "); 
    for (var i=0; i < aCookie.length; i++) 

       
      var aCrumb = aCookie[i].split("="); 
      if (sName == aCrumb[0]) 
      return unescape(aCrumb[1]); 
    } } 
    function DelCookie(sName) 

    document.cookie = sName + "=" + escape(sValue) + "; expires=Fri, 31 Dec 1999 23:59:59 GMT;"; 
    }
      

  2.   


    function addCookie(objName,objValue,objHours)
    {
    //已经有此名时,不添加
    if(document.cookie.toString().indexOf(objName)!=-1)
    {
     return -1;
    }
    var str=objName+"="+escape(objValue.toString());
    if(objHours>0)
    {
    var date=new Date();
       var ms=objHours*3600*1000;
       date.setTime(date.getTime()+ms);
       str+=";expires="+date.toGMTString();
    }
    document.cookie=str;
    //alert(document.cookie.toString().indexOf(objName)==-1);
    }
    function getCookie(objName)
    {
    if(document.cookie==null || document.cookie.toString().indexOf(objName)==-1)
    {
      // alert(document.cookie.toString().indexOf(objName)==-1);
       return null;
    }
    var str=document.cookie.toString();
    var begin=str.indexOf(";");
    if(begin==-1)
    {
    return unescape(str.substring(str.indexOf("=")+1));
    }
    var v=unescape(str.substring(str.indexOf("=")+1,begin));
    return v;
    }
    function delCookie(objName)
    {
    var date=new Date();
    date.setTime(date.getTime()-10000);
    document.cookie=objName+"=a;expires="+date.toGMTString();  
    }
    注意:在google的chrome中,在本地用cookie不行,只有上传到服务器上。不写path和domain 的原因是:这俩基本用不着。