使用javascript从cookie获取信息时出现问题
我的饼干有问题,我想不出来。 基本上我已经设置好了,所以它会检查cookie,看看 用户已登录,然后显示欢迎消息或 登录链接。 它可以工作-除了在 欢迎消息名称所在位置为空。 cookie就在那里,包含所有适当的信息。。不知道我在说什么 我做错了使用javascript从cookie获取信息时出现问题,javascript,cookies,Javascript,Cookies,我的饼干有问题,我想不出来。 基本上我已经设置好了,所以它会检查cookie,看看 用户已登录,然后显示欢迎消息或 登录链接。 它可以工作-除了在 欢迎消息名称所在位置为空。 cookie就在那里,包含所有适当的信息。。不知道我在说什么 我做错了 var itm = new Array(); itm[0] = findCookie("ui"); if (itm[0] == null) { document.write("<h2><a href='logreg.html'
var itm = new Array();
itm[0] = findCookie("ui");
if (itm[0] == null) {
document.write("<h2><a href='logreg.html'>Log In or Sign Up</a></h2>");
}
else {
var c1 = itm[0].indexOf(",");
var c2 = itm[0].indexOf(",",c1);
var c3 = itm[0].indexOf(",",c2);
var gname = itm[0].substring(c2,c3);
document.write("<h2>Welcome "+gname+"!</h2>");
}
没关系-我忘了在它找到逗号的索引后添加+1,否则它只会读取每个相同的索引号…而不知道典型的cookie值是什么样子很难说。。。您的问题很可能存在于以下几行:var c1=itm[0].indexOf,;var c2=itm[0]。索引of,,c1;var c3=itm[0]。索引为,c2;变量gname=itm[0]。子字符串C2,c3;findCookie是否返回包含逗号的cookie值?如果没有,它将始终返回一个空字符串。是的-我可以看到包含所有值、逗号等的cookie-它就在那里。
function findCookie(val){
var cookie = null;
var findVal = val + "=";
var dc = document.cookie;
if (dc.length > 0)
{
var start = dc.indexOf(findVal);
if (start >= 0)
{
start += findVal.length;
lastVal = dc.indexOf(";", start);
if (lastVal == -1)
{
lastVal = dc.length;
}
cookie = (dc.substring(start, lastVal));
}
else
{
return cookie;
}
}
return cookie;
}