javascript中cookies问题
我写了代码。。一个是用来设置一个cookie的,另一个是用来显示cookie内容是否存在,,照常说我运行一个界面时,设置了一个cookie,后停止运行,再 启动一个显示cookie的界面,此界面应该会显示出我之前设置的cookie的值,但没达到这个效果,找不到刚才设置的那个cookie,。。。。为什么啊 两个js代码如下//设置cookie
window.onload=nameFieldinit;
function nameFieldinit()
{
var userName="";
if(document.cookie!="")
{
userName=document.cookie.spilt("=")[1];
}
document.getElementById("nameField").value =userName;
document.getElementById("nameField").onblur=setCookie;
}
function setCookie()
{
var expireDate=new Date();
expireDate.setMonth(expireDate.getMonth()+6);//日期延长留个月
var userName=document.getElementById("nameField").value;
document.cookie="userName="+userName+"; expires="+expireDate.toDateString();
}
//显示cookie
window.onload=showcookie;
function showcookie()
{
var outmsg="";
if(document.cookie=="")
{
outmsg="there is no cookie";
}
else
{
var thiscookie=document.cookie.split("; ");//注意分号后面有空格号
for(var i=0;i<thiscookie.length;i++)//获取cookie中的各个记录
{
outmsg+="cookie name is "+thiscookie[i].split("=")[0];
outmsg+=", and cookie value is"+thiscookie[i].split("=")[1]+"<br/>";
}
}
document.getElementById("xianshi").innerHTML=outmsg;
}
请大家帮忙看看啊 --------------------编程问答-------------------- 两个文件是否在一个站点下
SetCookies : function(name,value,exptime){
try{
if(arguments.length == 2) return arguments.callee(name,value,30*24*60*60*1000);
var exp = new Date();
exp.setTime(exp.getTime() + exptime);
document.cookie = name + "="+ escape(value) +";expires="+ exp.toGMTString();
}
catch(e){
throw new Error("SetCookies: " + e.message);
return false;
}
}
/// 读cookie
GetCookies : function(name){
try{
var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
if(arr != null)
return unescape(arr[2]);
return null;
}
catch(e){
throw new Error("GetCookies: " + e.message);
return false;
}
}
//调用
document.getElementById('btn').attachEvent("onclick",function(){
SetCookies ("key","value");
});
--------------------编程问答-------------------- 是在同一个站点下。。。那就是我的那段代码是不行的吗?? --------------------编程问答-------------------- 1.可能你没有写入成功,也就是写cookie代码有问题
2.可能你没有读成功,也就是读cookie代码有问题.
简单判断一下,当你开启新的读窗口时,在这个窗口的url栏输入
javascript:alert(document.cookie)
如果弹出窗口中有你刚才写的cookie,那说明....
另外,最好给这个cookie加上一个有效期,以及一个全局的path,即/ --------------------编程问答-------------------- 估计是没有写入成功 --------------------编程问答-------------------- 有些浏览器新开一个窗口时,相当于一个新的http对话
如果你前面写的 cookie没有设有效期,那么实际上只在当前对话中有效
你新开窗口就无法取到了.
补充:.NET技术 , ASP.NET