一、父页面向子页面传值:
a.父页面监听
window.addEventListener('message',function(e){
console.log("父 接受 子",e)
var ret = e.data;
//处理数据
},false);
b.子页面发送
//1.获得父页面
parentWindow = window.opener;
//2.利用postMessage向指定的父页面传值,*代表所有均可访问,也可添加指定的url
parentWindow.postMessage(“来自子页面的数据”, '*');
二、子页面向父页面传值:
//a.子页面监听
window.addEventListener("message", function (e) {
console.log("子->父", e.data)
//数据处理
}, false)
//b.父页面在子页面打开成功后传值
//1.使用window.open打开子页面
var ret = window.open (strUrl, array, "dialogHeight:500px;dialogWidth:600px;center:Yes;Help:No;Resizable:No;Scroll:0;Status:no;Copyhistory:yes;") ;
//2.子页面打开之后,父页面传值(使用settimeout,否则页面可能没打开成功就走到这一步)
setTimeout(
function(){
ret.postMessage(“父页面传递的值”,strUrl)
}, 300
)