当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript Cookie的读取和写入函数

Javascript
拖动一个HTML元素
JavaScript使用prototype定义对象类型(转)[
枚举JavaScript对象的函数
在Javascript中定义对象类别
获取任意Html元素与body之间的偏移距离 offsetTop、offsetLeft (For:IE5+ FF1 )[
用JavaScript限制textarea输入长度 (For: IE、Firefox ...)[
检测邮箱地址是否合法 Check Mail Address (For: IE5+、FF1.06、Opera 7+ ...)[
用于自动添加Digg This!按钮的JavaScript
Javascript实例教程(19) 使用HoTMetal(1)
Javascript实例教程(19) 使用HoTMetal(2)
Javascript实例教程(19) 使用HoTMetal(3)
Javascript实例教程(19) 使用HoTMetal(4)
Javascript实例教程(19) 使用HoTMetal(5)
Javascript实例教程(19) 使用HoTMetal(6)
Javascript实例教程(19) 使用HoTMetal(7)
实现复选框全选/全不选切换
js不是基础的基础
IE的不合理设计和Bugs
js倒计时代码
js静态作用域的功能。

Javascript 中的 JavaScript Cookie的读取和写入函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 136 ::
收藏到网摘: n/a

Cookie的读取和写入实现函数。 Html代码:
复制代码 代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>JavaScript与Cookie(一)</title>
</head>
<body>
<form name="frm1" method="post" onsubmit="savecookie()">
<p>CookieMessage:<input type="text" name="cookieInfo" size="50"/></p>
<p>Valid-time:<input type="text" name="time" size="10" value="30"/>Please input a integer.</p>
<div style="border:1px solid #ccc;" id="divInfo"></div>
<p><input type="submit" name="submit" value="Submit">
<input type="reset" name="reset" value="Reset"/></p>
<p><input type="button" onclick="writeAllCookie()" value="writeAllCookie"/></p>
<p><input type="text" name="txtGetSpc"/> <input type="button" value="GetSpecificCookie" onclick="getCk()" </p>
</form>
</body>
</html>


Js代码:
复制代码 代码如下:

<script language="JavaScript" type="text/javascript">
/*
* 设置Cookie的通用函数,其中name是必须的参数。其它为可选,故用条件语句判断。
* 在设置Cookie时若不设置过期时间则该Cookie为临时的,仅当此次会话可用
*/
function setcookie(name, value, expires, path, domain, secure) {
var curcookie = name + "=" + encodeURI(value)
+((expires) ? ";expires=" + expires.toGMTString() : "")
+((path) ? ";path=" + path : "")
+((domain) ? ";domain=" + domain : "")
+((secure) ? ";secure" : "");
document.cookie = curcookie;
}
//Cookie的写入
function savecookie() {
var cookieInfo = document.frm1.cookieInfo.value;
var time = document.frm1.time.value;
var now = new Date();
now.setDate( now.getDate() + time);
setcookie("myCookie",cookieInfo,now);
document.write(decodeURI(document.cookie));
}
//读取所有Cooke
function writeAllCookie() {
document.cookie = "name1=" + encodeURI("名字1");
document.cookie = "name2=" + encodeURI("名字2");
document.cookie = "name3=" + encodeURI("名字3");
var strInfo;
var cookie = document.cookie.split(";");
for(var i=0; i<cookie.length; i++) {
var ck = cookie[i].split("=");
var cName = ck[0];
var cValue = decodeURI(ck[1]);
strInfo += cName + "=" + cValue +"<br>";
}
document.getElementById("divInfo").innerHTML = strInfo;
}
/*
* 读取特定Cookie的通用函数
*/
function getSpecificCookie(name) {
if(document.cookie.length > 0) {
start = document.cookie.indexOf(name + "=");
if( start != -1) {
start = start + name.length + 1;
end = document.cookie.indexOf(";",start);
if( end == -1) {
end = document.cookie.length;
}
}
return decodeURI(document.cookie.substring(start,end));
}
return "";
}
function getCk(){
name = document.frm1.txtGetSpc.value;
alert( getSpecificCookie(name));
}
</script>