window.onload = nameFieldInit;function nameFieldInit() {
var userName = "";
if (document.cookie != "") {
userName = document.cookie.split("=")[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 + ";path=/;expires=" + expireDate.toGMTString();
}大家帮我看看,我知道cookie的结构应该是userName=value;expired=value;path=value
这段代码为什么不对cookie经行";"分割,直接"="就可以得到userName的值了吗?
用=分割得到的数组的第2个元素,也就是索引为1的元素刚好就是userName
还要再对=做一次分割
我觉得要得到正确的值应该是先分割;再分割=
即document.cookie.split(';')[0].split('=')[1];
这样才可以得到正确的username
用上面这段代码,有一个前提,你要取的键值必须的第一个cookie 值!
用上面这段代码,有一个前提,你要取的键值必须的第一个cookie 值!