`
lushuaiyin
  • 浏览: 675190 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

js操作cookie

 
阅读更多

直接上代码吧,清楚明了。

cookie的查看局势到cookie的路径下看看打开文件,看看有没有。(记得右键刷新)

<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%@ page import="java.util.*" %>
<%@ page import="javax.servlet.http.*" %>
<%
	String path = request.getContextPath();
%>
<% 
  //Cookie coo1 = new Cookie("key1", "value1"); 
  //coo1.setMaxAge(60000); 
  //coo1.setPath("/");
 // response.addCookie(coo1); 
%> 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <title>Single Series Column 2D Chart</title>
<script src="<%=path%>/script/jquery-1.7.1.js" type="text/javascript"></script>
</head>

<body style=" overflow-y:scroll;overflow-x:auto;">
<input type="hidden" id="path" value="<%=path%>" />
<p align="center">java操作cookie</p>
<input type="button" id="chaxun" value="添加cookie" onclick="chaxun();"/>
<input type="button" id="showcookie" value="显示所有cookie" onclick="showcookie();"/>
<input type="button" id="delcookie" value="删除cookie" onclick="delcookie();"/>
<input type="button" id="editcookie" value="修改cookie" onclick="editcookie();"/>

<hr>
<p align="center">js操作cookie</p>
<input type="button" id="jsaddcookie" value="js添加cookie" onclick="jsaddcookie();"/>
<input type="button" id="jsshowcookie" value="js显示所有cookie" onclick="jsshowcookie();"/>
<input type="button" id="jsdelcookie" value="js删除cookie" onclick="jsdelcookie();"/>
<input type="button" id="jseditcookie" value="js修改cookie" onclick="jseditcookie();"/>
<hr>

<textarea id="txt" cols="80" rows="20"></textarea>
<input type="button"  value="清空内容" onclick="javascript:txt.value='';"/>
<script type="text/javascript">
var path=document.getElementById("path").value;


//查询
function chaxun(){
	var urlpath=path+'/report/addcookie.action?dd='+Math.random();
	$.ajax({
		   type: "POST",
		   url: urlpath,
		   success: validateBack
		});
}

function validateBack(msg){
	 var mm=$.trim(msg);
     if(mm=="NO"){
     }else{
	    // alert(mm);
     }
}


//showcookie
function showcookie(){
	var urlpath=path+'/report/showcookie.action?dd='+Math.random();
	$.ajax({
		   type: "POST",
		   url: urlpath,
		   success: showcookieBack
		});
}

function showcookieBack(msg){
	 var mm=$.trim(msg);
     if(mm=="NO"){
     }else{
	    // alert(mm);
     }
}

//delcookie
function delcookie(){
	var urlpath=path+'/report/delcookie.action?dd='+Math.random();
	$.ajax({
		   type: "POST",
		   url: urlpath,
		   success: delcookieBack
		});
}

function delcookieBack(msg){
	 var mm=$.trim(msg);
     if(mm=="NO"){
     }else{
	    // alert(mm);
     }
}

//delcookie
function editcookie(){
	var urlpath=path+'/report/editcookie.action?dd='+Math.random();
	$.ajax({
		   type: "POST",
		   url: urlpath,
		   success: editcookieBack
		});
}

function editcookieBack(msg){
	 var mm=$.trim(msg);
     if(mm=="NO"){
     }else{
	    // alert(mm);
     }
}

///////////////////////////////////------js-----操作cookie------///////////////////////////////////////////

function jsaddcookie(){
	var expiresDate=new Date();
	expiresDate.setMonth(expiresDate.getMonth()+1);//设置cookie失效日期,是个具体的日期值,要用GMT格式,可以自定义日期
	
	//和java类似,除了name和value没用属性=值得方式,而是直接cookie名称=cookie值,
	//其他的属性都是属性名称=属性值的形式(expires,path,domain,secure)
	var cookieStr="cookiexxxxName="+encodeURI("中文名称")
	 +";expires="+expiresDate.toGMTString()
	 +";path=/"
	 //+";domain="
	 +";secure";
	 
	document.cookie=$.trim(cookieStr);
}
/*
 遍历后的结果如下:
 
 JSESSIONID=47BD54C0CD6284F0DBFB0EC2333722EC
 cookiexxxxName=%E4%B8%AD%E6%96%87%E5%90%8D%E7%A7%B0haha

 知道了这公司数据结构,如果要找某个cookie,只需要在for循环里
 再把值cookiexxxxName=%E4%B8%AD%E6%96%87%E5%90%8D%E7%A7%B0haha
 做拆分,split("="),这样就能根据名称判断是不是你找的那个cookie了。
 
 function getCookieByName(cookiename){
	if (document.cookie.length>0){
	    var cookies=document.cookie.split(";");
	    if(cookies.length>0){
	    	for(var i=0;i<cookies.length;i++){
	    		var ck=cookies[i];
	    		var arr=ck.split("=");
	    		if(arr.length>1){
	    			var key=arr[0];
	    			if(key==cookiename){
	    				alert("找到这个cookie了");
	    			}
	    		}
	    	}//end for
	    }
	    
	}//end if
}
 
 */
function jsshowcookie(){
	var allcookies="";
	if (document.cookie.length>0){
	    var cookies=document.cookie.split(";");
	    if(cookies.length>0){
	    	for(var i=0;i<cookies.length;i++){
	    		var ck=cookies[i];
	    		//注意中文解码decodeURI
	    		allcookies+=decodeURI(ck)+"\r\n";
	    	}//end for
	    }
	    
	}//end if
	$("#txt").val(allcookies);
}

function jsdelcookie(){
	var delcookie="cookiexxxxName";//要删除的cookie名称
	var expiresDate=new Date();
	expiresDate.setMonth(expiresDate.getTime()-1);//设置cookie失效日期,是个具体的日期值,要用GMT格式,可以自定义日期
	
	document.cookie=delcookie+"="
	              +";path=/"
	              +";expires="+expiresDate.toGMTString();
	//删除时出现了在java中遇到的相同问题,就是必须设置path!。不然浏览器找不到cookie,当然也就删不了了。
}
function jseditcookie(){
	var editcookie="cookiexxxxName";//要修改的cookie名称
	var expiresDate=new Date();
	expiresDate.setMonth(expiresDate.getMonth()+1);//设置cookie失效日期,是个具体的日期值,要用GMT格式,可以自定义日期
	
	var zhvalue=encodeURI("中文名称haha");
	document.cookie=editcookie+"="+zhvalue
	              +";path=/"
	              +";expires="+expiresDate.toGMTString();
	//修改时出现了在java中遇到的相同问题,就是必须设置path!。不然浏览器找不到cookie,当然也就修改不了了;
	//同时还要设置失效日期expires,不设置的话默认是0,相当于删除!
}

//如果要删除或者修改指定名称的cookie,只需要在查询所有cookie那个方法里添加判断名称的逻辑就可以了。

</script>


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics