这篇文章是自己在项目中遇到,同时参考了网上的资料,作为笔记参考使用
一、页面之间的传值
1、使用cookie传值
封装简单使用:
//获取cookie
function getCookie(name){
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg)){
return unescape(arr[2]);
}
else{
return null;
}
}
//删除cookie
function delCookie(name){
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval=getCookie(name);
if(cval!=null){
document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}
}
//设置cookie
function setCookie(name,value){
var Days = 1;
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
js使用cookie
通过 JavaScript,可以这样创建 cookie:
document.cookie = "username=Bill Gates";
您还可以添加有效日期(UTC 时间)。默认情况下,在浏览器关闭时会删除 cookie:
document.cookie = "username=John Doe; expires=Sun, 31 Dec 2017 12:00:00 UTC";
通过 path 参数,您可以告诉浏览器 cookie 属于什么路径。默认情况下,cookie 属于当前页。
document.cookie = "username=Bill Gates; expires=Sun, 31 Dec 2017 12:00:00 UTC; path=/";
获取cookie
var x = document.cookie;
删除cookie
直接把 expires 参数设置为过去的日期即可:
document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";
2、使用localStorage
localStorage.setItem('myCat', 'Tom'); //设置
let cat = localStorage.getItem('myCat'); //获取
localStorage.removeItem('myCat'); //删除
localStorage.clear(); //删除所有
3、 通过url传递参数的方式
该案例也是从a.html向b.html页面传递参数
1. a.html的代码
?
1
2
跳转
2.点击跳转按钮可以将input标签的value值传递到b.html
?
1
2
3
4
function jump() {
var s = document.getElementsByTagName('input')[0];
location.href='7.获取参数.html?'+'txt=' + encodeURI(s.value);
}
3. b.html中的代码
?
1
2
3
4
5
6
7
var loc = location.href;
var n1 = loc.length;
var n2 = loc.indexOf('=');
var txt = decodeURI(loc.substr(n2+1,n1-n2));
var box = document.getElementById('box');
box.innerHTML = txt;
二、父子页面方法的调用一级获取元素
1、$("#父窗口元素ID",window.parent.document);
对应javascript版本为
window.parent.document.getElementById("父窗口元素ID");
取父窗口的元素方法:
$(selector, window.parent.document);
取父窗口的父窗口的元素就可以用:
$(selector, window.parent.parent.document);
类似的,取其它窗口的方法大同小异获取iframe父窗体元素:
$(selector, window.parent.document);
获取通过windows.open()打开的父窗体:
$(selector, window.opener.document);
获取通过 showModelDialog()打开的父窗体:
$(selector, window.dialogArguments.document);
用于刷新父窗口整个页面:
window.parent.location.reload();
window插件关闭窗口,类似于window.close():
parent.subWindow_add.Close();
刷新父页面中的id为“4thEditTable”的列表(局部刷新):
parent.$("#4thEditTable").load(window.parent.location.href+" #4thEditTable");
标签:parent,window,html,cookie,exp,var,document,传值,页面
来源: https://www.cnblogs.com/shenpeng/p/12035018.html