«
JavaScript静态页面值传递之Cookie篇

时间:2008-5-31    作者:Deri    分类: 分享


   <p>  利用Cookie.</p><p>  Cookie是浏览器存储少量命名数据.</p><p>  它与某个特定的网页或网站关联在一起.</p><p>  Cookie用来给浏览器提供内存,</p><p>  以便脚本和服务器程序可以在一个页面中使用另一个页面的输入数据.</p><p>  Post.htm</p><code><input type="text" name="txt1"><br /><input type="button" value="Post"><br /><script language="javascript" ><br />function setCookie(name,value)<br />{<br />/*<br />*--------------- setCookie(name,value) -----------------<br />* setCookie(name,value)<br />* 功能:设置得变量name的值<br />* 参数:name,字符串;value,字符串.<br />* 实例:setCookie('username','baobao')<br />*--------------- setCookie(name,value) -----------------<br />*/<br />  var Days = 30; //此 cookie 将被保存 30 天<br />  var exp = new Date();<br />  exp.setTime(exp.getTime() + Days*24*60*60*1000);<br />  document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();<br />  location.href = "Read.htm"; //接收页面.<br />}<br /></script></code></p><p>  Read.htm</p><code><script language="javascript" ><br />function getCookie(name)<br />{<br />/*<br />*--------------- getCookie(name) -----------------<br />* getCookie(name)<br />* 功能:取得变量name的值<br />* 参数:name,字符串.<br />* 实例:alert(getCookie("baobao"));<br />*--------------- getCookie(name) -----------------<br />*/<br />  var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));<br />  if(arr !=null) return unescape(arr[2]); return null;<br />}<br />alert(getCookie("baobao"));<br /></script></code></p><p>  优点:可以在同源内的任意网页内访问.生命期可以设置.</p><p>  缺点:值长度有限制.</p>