snowfox373 2007-12-9 18:26
JavaScript静态页面值传递之Cookie篇
利用Cookie:Cookie是浏览器存储少量命名数据.它与某个特定的网页或网站关联在一起。;f|"k{j)E
|2? `5Y*o/z,V
Cookie用来给浏览器提供内存,以便脚本和服务器程序可以在一个页面中使用另一个页面的输入数据。?;F a?0rl
sz7b2pbf]+ZB
Post.htm[code]<input type="text" name="txt1">
,P3J\w$|dP
<input type="button" value="Post"> `0i0~d8aM&tj7eb
<script language="javascript" >
'B/AD%{~s7IL
function setCookie(name,value) '|
P\.O1_(Kk']
{
J!|'@[/j4Ex
/*
x;iEB3kM+l
*--------------- setCookie(name,value) ----------------- 1e6i
m-E;u+t"G)N)bH|y
* setCookie(name,value)
S~ja\B
* 功能:设置得变量name的值 9Ln/V2QhT
* 参数:name,字符串;value,字符串.
d6K*S{o1csK
* 实例:setCookie('username','baobao') ;|xr*sVyK/a
*--------------- setCookie(name,value) ----------------- -J F
teGW Ck
*/ W%AY/g4F/p
var Days = 30; //此 cookie 将被保存 30 天 Y*Wd*`c
var exp = new Date(); \o&j8PYY5x
exp.setTime(exp.getTime() + Days*24*60*60*1000);
$|`~R1vY(c
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); 0J7v*DV }5r-WM3}"A
location.href = "Read.htm"; //接收页面. K!Y9c~-|F
}
*A6s"N!Eq4^aJ
</script>[/code]Read.htm[code]<script language="javascript" > :T6K1g,|qG$r'G-Q
function getCookie(name)
$EA2BZ4E!|
f
{ @LFy0F6c
/*
(W z#xA
s2?6?&g8Z
*--------------- getCookie(name) ----------------- 9qB?%W/Z#l
* getCookie(name) z.R'D P2G:eOX
* 功能:取得变量name的值 8?Nr,Uhs*`-F
* 参数:name,字符串. *qb7{2uQh_4U0u3P
* 实例:alert(getCookie("baobao")); ,@OIL:L GG
*--------------- getCookie(name) ----------------- ihn!ag x3p5{b,wl \g2^
*/ &I8a:I
T*}3t
var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
;J L6A
b!i5f9V
if(arr !=null) return unescape(arr[2]); return null;
Om4L6W_ ~L#C
} )l q O(u T
RT
alert(getCookie("baobao")); \1dN5pe
</script>[/code]优点:可以在同源内的任意网页内访问.生命期可以设置.NV/MLe.w6K
d,o7d.X}5SQ"H
缺点:值长度有限制.