首页 > 试题广场 >

在一个html静态网站里A页面需要跳转并传递相关数据到B页面

[问答题]

在一个html静态网站里A页面需要跳转并传递相关数据到B页面(两个页面处于同个域名下)请按照你对此场景的理解写出N中页面之前传参的代码(只需写出A页面传递参数及B页面接收参数的js关键代码)

A页面
<input type="text" id="txt" />
<button id="submit">submit</button>
<script>
var  val=document.getElementById("txt").value;
var button=document.getElementById("submit");
button.onclick=function(){
location.href="b.html?"+"txt="+encodeURI(val);
};
</script>
B页面:
<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>
发表于 2017-08-03 15:38:55 回复(1)
A页面中
function setCookie(name, value, expires, path) {
var oDate = new Date();
oDate.setDate(oDate.getDate() + expires);
document.cookie = name + '=' + encodeURIComponent(value) + ';expires=' + oDate + ';path=' + path;
}

B页面中
function getCookie(name) {
var aCookie = document.cookie.split('; ');
for(var i =0; i < aCookie.length; i++) {
var aTemp = aCookie[i].split('=');
if(aTemp[0] === name) {
return decodeURIComponent(aTemp[1]);
}
}
}

也可以用localstorage.setItem(name,value); localstorage.getItem(name)
发表于 2018-04-11 16:40:02 回复(0)

方法1:使用cookie
A页面
document.cookie = "user="+username;
B页面
var username = document.cookie.split("=")[1];//简略版

发表于 2017-08-01 22:02:32 回复(0)
A-encodeURLComponent(xx) B-decodeURLcomponent(xx)
发表于 2017-11-21 15:01:40 回复(0)