//写入cookie
HttpCookie cookie = new HttpCookie("icon", 你的图标);
cookie.Expires = DateTime.Now.AddDays(2);
Response.Cookies.Add(cookie);//读取cookie
if (Request.Cookies["user"] != null)
{
            Response.Write("欢迎:" + Request.Cookies["user"].Value);
}

解决方案 »

  1.   

    谢谢,但我想用javascript实现呢?
      

  2.   

    var exdate=new date()
    exdate.setDate(exdate.getDate() + 2);
    document.cookie  = 'imgName=icon;expires=exdate.toGMTString()';
    if(document.cookie.indexOf("imgName=")==-1){
        img.style.display='none'
    }
    不知道这样可以不
      

  3.   

    应该是服务器端做的控制,而不是客户端,如果用户手动清除浏览器的cookie,那么你的设置必然失效
      

  4.   

    To 3#,
    如果每次load页面,是不是这个cookie每次都会设置成一个新的值呢,因为var exdate=new date()这个值一直会变呢
      

  5.   

    现在的事件就是page load时就显示这个图标,当显示完两天就永远不要再显示
      

  6.   

    首先得要有一个参照的时间,这个时间是恒久不变的时间,你不能用类似cookie之类的保存用户加载的第一次,你只能写死,因为每个用户保存cookie的时间是不一样的,这样就失去了2天失效的意义。例如写死2014-05-10,那么超过12号的24点,就可以直接remove掉dom节点。另外补充一点个人建议:
    javascript不是万能的,关键是跟业务走,没有非要用的语言,只有在范围内可选的。向你这种需求,有一个节点对照的,最好取一个固定时间,那就是当前服务器的时间,是服务端该做的事。javascript是脚本语言,客户端执行的,每次取到的时间是不一样的,增加了编写代码的难度。
      

  7.   

    确实是,每个人第一次登录页面的时间都是不一样的了。而且当客户端手动清除cookie文件时,还是会继续显示出来的。
      

  8.   

    应该每次load的时候判断下 这个cookie是不是存在,如果存在就不设了,如果不存在就设置啊.这样就不会存在 同一个用户多次登录问题。但就是如 楼上说的,用户如果删除cookie,就得重新来了。