更新iframe中的父javascript对象,并在父对象中获取iframe中更新的值

更新iframe中的父javascript对象,并在父对象中获取iframe中更新的值,javascript,jquery,iframe,Javascript,Jquery,Iframe,我有一个带iframe的文档 <body> <script> globalObj = {}; globalObj.myname = 'sachin'; globalObj.age = '25'; </script> <form name="PrePage" method = "post" action = "https://scotest.authorize.net/payment/CatalogPayment.aspx"> &

我有一个带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>

globalObj={};
globalObj.myname='sachin';
globalObj.age='25';
log('firts==>');console.log(globalObj);
console.log('2nd----->');console.log(globalObj);

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>

//console.log(parent.globalObj);
//警报('testts-->'+parent.myVar);
parent.globalObj.myname='vikas';
console.log('updated-->');console.log(parent.globalObj);
我想要实现的是,一旦我更新了
globalObj
的iframe中的值,我就想在父文档中得到更新后的值,而不是原始值。
如何实现它。iframe和html页面位于同一个域。

在主机页中添加一个函数:

<script>
function updatename(name,age){
  globalObj.name=name;
  globalObj.age=age;
}
</script>
document.globalObj={myname:'sachin',age:23};
在iframe页面中:

<script>
parent.updatename('vikas',23);
</script>
parent.document.globalObj={myname:'vikas',age:23};

因此,如果我在iframe页面中更新它,并且在主机页面中访问它,它会给我更新的值吗?我的意思是,我希望更新同一个对象,而不是为主机和iframe创建两个不同的对象。这将帮助我更新,但不能解决问题。我仍然会在主机中获取旧值,即使我更新了iframe中的变量,iframe页面也无法读取主机页的变量。这是一个安全考虑,即使它们位于同一个域上。您可以通过使用参数化URL重新加载iframe来传播主机值。因此,您的意思是,一旦我更新iframe中的值,我将无法在主机中获得更新的值?此外,我没有为此获得参数化URL重新加载解决方案。请您详细说明。在主机和iframe页面之间设置全双工通信是很棘手的。在firefox中使用firebug查看是否有任何访问被拒绝的错误。更改是指您的主机变量由iframe正确设置,但没有正确读回。如果iframe有一个id,比如说“ifrm”,则可以执行document.getElementById('ifrm').src=“iframe.php?name=“+name+”&age=“+age;