function setCookie(name,value,expires,path,domain,secure)
{
var expString = ((expires == "")?"":("; expires="+expires.toGMTString()));
var pathString = ((path == "")?"":("; path="+path));
var domainString = ((domain == "")?"":("; domain=" +domain));
var secureString = ((secure == "true")?("; secure"):"");
document.cookie = name + "=" + escape(value)+ expString + pathString + domainString + secureString;
}
expDate = new Date();
expDate.setTime(expDate.getTime()+parseInt(exp));
setCookie(nameString,valueString,expDate,pathString,domainString,secureString);上面是一个保存cookie的函数,当你把exp参数设成一个单位为毫秒的时间值时,cookie就保存exp这么长的时间。function GetCookie(name)
{
var sesult = null;
var myCookie = "" + document.cookie + ";";
var searchName = "" + name + "=";
var startOfCookie = myCookie.indexOf(searchName);
var endOfCookie;
if (startOfCookie!=-1)
{
startOfCookie += searchName.length;
//skip past cookie name
endOfCookie = myCookie.indexOf(";",startOfCookie);
result = unescape(myCookie.substring(startOfCookie,endOfCookie));
}
return result;
}
上面函数是查找cookie函数。返回所找到的cookie值

解决方案 »

  1.   

    我也想你这样设置了cookie了。可我在a.htm里设置了一个cookie,name为aa,在b.htm里不能读出在a.htm设置的cookie的aa值。什么原因??
      

  2.   

    我也想你这样设置了cookie了。可我在a.htm里设置了一个cookie,name为aa,在b.htm里不能读出在a.htm设置的cookie的aa值。什么原因??注:在a
    .htm可以读出aa cookie。
      

  3.   

    function readCookie(CookieName)
    {

    if(document.Cookie==null)//没有cookie
    {
    return null;

    }

    else
    {
    return getCookie(CookieName);
    }
    }
    //-----------------------------------------------------------------------------
    function getCookie(CookieName)//读出Cookie
    {
    var CookieStr=document.Cookie;
    var CookieHeader=CookieName+"=";
    var start=CookieStr.indexOf(CookieHeader);
    var end;
    if(start==-1)//找不到Cookie
    {
    return null;
    }
    else
    {
    start=CookieName.length+1;
    end=CookieStr.indexOf(";",start);
    if(end==-1)
      return unescape(CookieStr.substring(start));
    else
    return unescape(CookieStr.substring(start,end));
     
    }

    }//-------------------------------------
    function setCookie(CookieName,CookieValue)//设置Cookie
    {
    var expTime=new Date();
    expTime.setTime(expTime.getTime()+60*60*1000*24*7);//一个星期过期时间
    var cookieValue=CookieName+"="+escape(CookieValue)+";expires="+expTime.toGMTString();
    cookieValue+=";path=/;domain=www.enlight-china.com;";
    document.Cookie=cookieValue;

    }
    //--------------------------------
    在同一页中可以先设置cookie,可以正常读出cookie。如果先设置cookie,然后重载一次页面(在ie地址栏按转到)读出cooie为null,没有定义。在另外的htm也不能读出cookie天啊。主,救我。
      

  4.   

    设置cookie保存的事件,不然,页面关闭cookie就没有了
    设置cookie的path属性,path为能访问该cookie的页面
      

  5.   

    都不行,
    我的qq:10987478
    MSN:[email protected]
    可以加我吗:
      

  6.   

    这是我以前写的一个cookie,你参考一下,其中domain属性不要设置。
    <html>
    <head>
    <script type="text/javascript">
    function setCookieEZ(name,value)
    {
    if (name==""||value=="")
    {
    alert("name and value can not be empty!");
    return;
    }
    document.cookie=name+"="+escape(value);
    document.getElementById('t1').value="";
    document.getElementById('t2').value="";
    }
    function setCookie(name,value,expires,path,domain,secure)
    {
    var expString = ((expires == "")?"":("; expires="+expires.toGMTString()));
    var pathString = ((path == "")?"":("; path="+path));
    var domainString = ((domain == "")?"":("; domain=" +domain));
    var secureString = ((secure == "true")?("; secure"):"");
    document.cookie = name + "=" + escape(value)+ expString + pathString + domainString + secureString;
    alert(name+" "+value+" "+expString+" "+pathString+" "+domainString+" "+secureString);
    }
    function beforSet()
    {
    var nameString = document.getElementById('txt1').value;
    var valueString = document.getElementById('txt2').value;
    var expiresString = document.getElementById('txt3').value;
    var pathString = document.getElementById('txt4').value;
    var domainString = document.getElementById('txt5').value;
    var secureString = document.getElementById('sec').options[document.getElementById('sec').options.selectedIndex].text;
    var expDate="";
    if(expiresString!="")
    {
    expDate = new Date();
    expDate.setTime(expDate.getTime()+parseInt(expiresString));
    }
    setCookie(nameString,valueString,expDate,pathString,domainString,secureString);
    }
    function getCookie(name)
    {
    var result = null;
    var myCookie = "" + document.cookie + ";";
    var searchName = "" + name + "=";
    var startOfCookie = myCookie.indexOf(searchName);
    var endOfCookie;
    if (startOfCookie!=-1)
    {
    startOfCookie += searchName.length;
    //skip past cookie name
    endOfCookie = myCookie.indexOf(";",startOfCookie);
    result = unescape(myCookie.substring(startOfCookie,endOfCookie));
    }
    return result;
    }
    </script>
    </head>
    <body>
    name:<input type="text" id=t1 width=10>
    value:<input type="text" id=t2 width=10>
    <input type="button" value="Set Cookie" onclick="setCookieEZ(document.getElementById('t1').value,document.getElementById('t2').value)">
    <hr>
    <input type="button" value="Show Cookie" onclick="javascript:alert(document.cookie)">
    <hr>
    name:<input type="text" id=txt1 width=10>
    value:<input type="text" id=txt2 width=10>
    expires:<input type="text" id=txt3 width=10>
    <p></p>
    path:<input type="text" id=txt4 width=10>
    domain:<input type="text" id=txt5 width=10>
    secure:<select id=sec size=1>
    <option selected>false</option>
    <option>true</option>
    </select>
    <input type="button" value="Set Cookie" onclick="beforSet()">
    <hr>
    <input type="button" value="Show Cookie" onclick="javascript:alert(document.cookie)">
    <hr>
    <input type="text" id=text1 width=10>
    <input type="button" value="Find Cookie" onclick="javascript:if(document.getElementById('text1').value!='')alert(getCookie(document.getElementById('text1').value))">
    </body>
    </html>