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

Javascript
jquery 交替为表格添加样式的代码
jquery下操作HTML控件的实现代码
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
海量经典的jQuery插件集合
JavaScript获取鼠标坐标的函数(兼容IE、FireFox、Chrome)
JavaScript关于select的相关操作说明
jQuery的一些特性和用法整理小结
用jQuery扩展自写的 UI导航
JQuery 引发两次$(document.ready)事件
javascript实现的基于金山词霸网络翻译的代码
Span元素的width属性无效果原因及解决方案
javascript 不间断的图片滚动并可点击
利用onresize使得div可以随着屏幕大小而自适应的代码
extjs 为某个事件设置拦截器
javascript 构建一个xmlhttp对象池合理创建和使用xmlhttp对象
javascript 特性检测并非浏览器检测
20个非常有用的PHP类库 加速php开发
前淘宝前端开发工程师阿当的PPT中有JS技术理念问题
AJAX的跨域与JSONP(为文章自动添加短址的功能)
JavaScript学习笔记(十)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 364 ::
收藏到网摘: 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>