最近在写asp登陆页面的时候发现了一些问题!当用用户登陆成功,我想保留用户的登陆状态(我使用的是cookie)。通过设置cookie的Expires属性来保存它的生命周期!我是使用js脚本写的
代码如下:<
var username=Request.Form("username");//从注册页面获取的信息
Response.cookies("beifeng")("username")=username;
Response.cookies("beifeng")("username").Expires=new Date().getMinutes()+60*24;//在这里我想将cookies保存一天,但是报错,我已经声明,用的是js脚本!
>报错如下:为“Expires”指定的日期早于 1980 年 1 月 1 日,或晚于 2038 年 1 月19 日,3:14:07 GMT
代码如下:<
var username=Request.Form("username");//从注册页面获取的信息
Response.cookies("beifeng")("username")=username;
Response.cookies("beifeng")("username").Expires=new Date().getMinutes()+60*24;//在这里我想将cookies保存一天,但是报错,我已经声明,用的是js脚本!
>报错如下:为“Expires”指定的日期早于 1980 年 1 月 1 日,或晚于 2038 年 1 月19 日,3:14:07 GMT
解决方案 »
- JSON 表达式里怎么取 this?
- 我只会简单的js、jq,怎么提高自己的js水平,求指教!
- 难!!!!怎样获得主机名?(主机就是JavaScript运行的机器)
- JSP页面上调不到JS文件里面的方法
- javascript能不能格式化数字的显示:数字1显示为01
- 为什么执行不了,是不是跟attachEvent有关???
- 如何在用户按下Ctrl+C时,不会复制而是弹出一个窗口
- 请问如何阻止用另存为将网页保存在本机上
- 想取属性的val,结果取到的是属性的id,谁给看一下
- 寻高手帮忙解决两个js冲突!没分了希望高手别介意!
- js怎样实现自己的电脑在某个时间点自动关机
- jqgrid中选中某一行,如何实现它的下一级表格根据该行的id更新数据呢?
var d = new Date();
d.setTime(d.getTime() + 24 * 60 * 60);
document.cookie = 'username=lz;expires=' + d.toGMTString();
Response.Cookies("beifeng")("username")=username;Response.End();
}else
if(timeout==2){
var thedate=new Date();
thedate.setDate(thedate.getDate()+1);
Response.Cookies("beifeng")("username")=username;
Response.Cookies("beifeng").Expires=thedate.toUTCString();
Response.End();}
else
if(timeout==3){
var thedate=new Date();
thedate.setDate(thedate.getDate()+7);
Response.Cookies("beifeng")("username")=username;
Response.Cookies("beifeng").Expires=thedate.toUTCString()
}
根据timeout的值不同选择cookie的值保存不同的时间,但是依然类型不匹配!
/*
*设置Cookie
*
* name:cookie所对应的键
* value:cookie所对应的值
* expires:cookie所对应的有效时间
* path:指定可访问cookie的路径
* domain:指定可访问cookie的主机名
* secure:安全性
*/
function setCookie (name,value,expires,path,domain,secure) {
//cookie键值对
var str = name + "=" + escape(value);
//设置cookie的有效期,以小时为单位
if(expires > 0){
var date = new Date();
var ms = expires * 3600 * 1000;
date.setTime(date.getTime() + ms);
str += "; expires=" + date.toGMTString();
}
if(path){
str += "; path=" + path;
}
if(domain){
str += "; domain=" + domain;
}
if(secure){
str += "; secure";
}
document.cookie = str;
}
/*
*获得Cookie
*
*cookie_name:cookie的键
*/
function getCookie(cookie_name)
{
var value = null;
var allcookies = document.cookie;
var cookie_pos = allcookies.indexOf(cookie_name);
// 如果找到了索引,就代表cookie存在,
// 反之,就说明不存在。
if (cookie_pos != -1)
{
// 把cookie_pos放在值的开始,只要给值加1即可。
cookie_pos += cookie_name.length + 1;
var cookie_end = allcookies.indexOf(";", cookie_pos);
if (cookie_end == -1)
{
cookie_end = allcookies.length;
}
value = unescape(allcookies.substring(cookie_pos, cookie_end));
}
return value;
}
/*
*删除Cookie
*
*cookie_name:cookie的键
*/
function delCookie(cookie_name)
{
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var value = getCookie(cookie_name);
if(value){
document.cookie= cookie_name + "=" + value + ";expires=" + exp.toGMTString();
}
}这是我自己总结的js对Cookie的操作,希望对楼主有所帮助!