我有一个包含iframe的文档
<body>
<script>
globalObj = {};
globalObj.myname = 'sachin';
globalObj.age = '25';
</script>
<form name="PrePage" method = "post" action = "https://scotest.authorize.net/payment/CatalogPayment.aspx">
<input type = "hidden" name = "LinkId" value ="ae7263c8-b030-4ca8-9a98-f64308bb2a8e" />
<input type = "image" src ="//testcontent.authorize.net/images/donate-gold.gif" />
</form>
<script type="text/javascript">
console.log('firts====>');console.log(globalObj);
</script>
<iframe src="iframe.html">
</iframe>
<script type="text/javascript">
console.log('2nd----->');console.log(globalObj);
</script>
iframe.html
<html>
<head>
</head>
<body>
<script type="text/javascript">
//console.log(parent.globalObj);
//alert('testts-->'+parent.myVar);
parent.globalObj.myname = 'vikas';
console.log('updated---->');console.log(parent.globalObj);
</script>
</body>
</html>
我想要实现的是,一旦我更新了iframe的iframe中的值,globalObj
我就希望将更新后的值返回到父文档中而不是原始值中。我该如何实现。iframe和html页面位于同一域中。
在您的主机页面中添加一个功能:
<script>
function updatename(name,age){
globalObj.name=name;
globalObj.age=age;
}
</script>
然后在您的iframe页面中:
<script>
parent.updatename('vikas',23);
</script>
您可以直接在主机页面上访问变量,但要注意范围。我总是使用“文档”作为全局变量容器。在主机页面中:
document.globalObj={myname:'sachin',age:23};
在iframe页面中:
parent.document.globalObj={myname:'vikas',age:23};
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句