js实现页面与页面之间传值(页面1->页面2)

一.利用地址栏URL传值(最常用)

1.页面1

<input type="text" id="txt">
</br>
<input type="button" value="TEST" οnclick="test()"/>
<SCRIPT LANGUAGE="JavaScript">
function
 test(){       
var s =document.getElementById("txt");
location.href="2.html?"+"txt="+encodeURI(s.value); //添加参数
 }
</SCRIPT>

2.页面2

  <script language="javascript" type="text/javascript">
var loc=location.href;
var n1=loc.length;//地址的总长度
var n2=loc.indexOf("=");//取得=号的位置
var id=decodeURI(loc.substr(n2+1, n1-n2));//从=号后面的内容
alert(id);//  获取值
document.write(id)
 
  </script>

二.cookie传值

1.页面1

<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 
<title>无标题文档</title>
<style>
    div{ height: 36px; line-height: 36px; border: #eee solid 1px; margin: 10px;}
</style>
<script>
    
    
//添加 cookie
function cp_add_cookie(num){
setCookie("cp_keynum",num,2);  //添加参数
}
//查找
function cp_seek_cookie(){
var cp_keynum=getCookie("cp_keynum");
var find_result = document.getElementById("find_result2");
find_result.innerHTML = "cp_keynum == " + cp_keynum;  
}
 
 
//设置 cookie 值的函数,创建一个函数用于存储访问者的名字
function setCookie(cname,cvalue,exdays){
    var d = new Date();
    d.setTime(d.getTime()+(exdays*24*60*60*1000));
    var expires = "expires="+d.toGMTString();
    document.cookie = cname+"="+cvalue+"; "+expires;
}
//获取 cookie 值的函数,创建一个函数用户返回指定 cookie 的值
function getCookie(cname){
    var name = cname + "=";
    var ca = document.cookie.split(';');
    for(var i=0; i<ca.length; i++) {
        var c = ca[i].trim();
        if (c.indexOf(name)==0) return c.substring(name.length,c.length);
    }
    return "";
}
 
</script>
</head>
<body>
<h1>利用JavaScript Cookie存储 </h1>
<div οnclick="cp_add_cookie(1)">添加1</div>
<div οnclick="cp_add_cookie(2)">添加2</div>
<div οnclick="cp_add_cookie(3)">添加3</div>
<div οnclick="cp_seek_cookie()">查找</div>
<div id="find_result2"></div>
 
</body>

2.页面2

<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 
<title>接受数据</title>
<style>
    div{ height: 36px; line-height: 36px; border: #eee solid 1px; margin: 10px;}
</style>
<script>
    
    
//查找 cookie
 
function cp_seek_cookie(){
var cp_keynum=getCookie("cp_keynum");  //  获取值
var find_result = document.getElementById("find_result2");
find_result.innerHTML = "cp_keynum == " + cp_keynum;  
}
 
//获取 cookie 值的函数,创建一个函数用户返回指定 cookie 的值
function getCookie(cname){
    var name = cname + "=";
    var ca = document.cookie.split(';');
    for(var i=0; i<ca.length; i++) {
        var c = ca[i].trim();
        if (c.indexOf(name)==0) return c.substring(name.length,c.length);
    }
    return "";
}
 
</script>
 
</head>
<body>
<h1>利用JavaScript Cookie存储 </h1>
<div οnclick="cp_seek_cookie()">查找JavaScript Cookie存储的值</div>
<div id="find_result2"></div>
</body>

 

三.Web 存储传值

1.页面1

<h1>利用HTML5 Web 存储 localStorage</h1>
<div οnclick="save(1)">添加1</div>
<div οnclick="save(2)">添加2</div>
<div οnclick="save(3)">添加3</div>
<div οnclick="save(4)">添加4</div>
<div οnclick="save(5)">添加5</div>
<div οnclick="find()">查找</div>
 
<div id="find_result"></div>
 
<script>
if(typeof(Storage)=="undefined")
{
  document.getElementById("result").innerHTML="对不起,您的浏览器不支持 web 存储。";
}
//保存数据  
function save(cp_value){  
    var num = new Object;
    num.cp_keynum ="key_num";  
    num.cp_num_value = cp_value;
    var str = JSON.stringify(num); // 将对象转换为字符串
    localStorage.setItem(num.cp_keynum,str);  //添加参数
    alert("添加成功");
}
 //查找数据  
function find(){  
    var cp_keynum = "key_num";  
    var str = localStorage.getItem(cp_keynum);  
    var find_result = document.getElementById("find_result");
    var num = JSON.parse(str);  
    find_result.innerHTML = cp_keynum + "==" + num.cp_num_value;  
}  
    
</script>

2.页面2

<h1>利用HTML5 Web 存储 localStorage</h1>
<div οnclick="find()">查找</div>
<div id="find_result"></div>
<script>
if(typeof(Storage)=="undefined")
{
  document.getElementById("result").innerHTML="对不起,您的浏览器不支持 web 存储。";
}
 
 //查找数据  
function find(){  
    var cp_keynum = "key_num";  
    var str = localStorage.getItem(cp_keynum);  / / 获取值
    var find_result = document.getElementById("find_result");
    var num = JSON.parse(str);  
    find_result.innerHTML = cp_keynum + "==" + num.cp_num_value;  
}  
</script>

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值