JS页面之间传值

时间:2025-02-11 22:06:56

父页面与子页面之间有多种传值的方式:

第一种,通过window.open的方法打开一个新的页面,在新的页面里面通过window.opener来获取对象,以下为实例

父页面:

function opennewwindow()
{
window.open(URL); //字符串形式的URL
}

子页面:

function getfatherdom()
{
var value=window.opener.document.getElementById(id).value;
}

第二种,嵌套的形式,即子页面存放于<iframe></iframe>标签中,父页面只需要在iframe的src属性放入目标子页面的路径即可,子页面通过window.parent来获取父页面dom元素

父页面:

<iframe id="myiframe" src="URL"></iframe>

子页面:

function getfatherdom()
{
var value=window.parent.document.getElementById(id).value;
}

第三种,通过拼接URL的方法

父页面:

URL?para1=data1&para2=data2  //参数使用&分割 

子页面:

var Request = new Object();
Request = GetRequest();
var data1=Request['para1'];
var data2=Request['para2'];
var url = window.location.search; //获取url中"?"符后的字串(包括“?”),window.location.href获取URL字符串,也包括“?”之后的
var theRequest = new Object();
if (url.indexOf("?") != -1) {
var str = url.substr(1);
strs = str.split("&");
for(var i = 0; i < strs.length; i ++) {
theRequest[strs[i].split("=")[0]]=(strs[i].split("=")[1]);
}
}
return theRequest;