Javascript 跨子域将JS变量从子Iframe传递到父JSP

Javascript 跨子域将JS变量从子Iframe传递到父JSP,javascript,localhost,parent-child,Javascript,Localhost,Parent Child,我被困在一个位置,需要一些帮助。我在apache tomcat服务器上创建了两个子域,如server.xml中的domain1.localhost.com和domain2.localhost.com。在域1上,我有一个包含iFrame(托管在域2上)的JSP。如何将JS变量从子Iframe传递到父JSP,并将其存储在domain1.localhost.com上托管的JSP的局部变量中 我尝试在两个JSP上定义document.domain=“localhost”,但都不起作用。由于明显的跨域策略

我被困在一个位置,需要一些帮助。我在apache tomcat服务器上创建了两个子域,如server.xml中的domain1.localhost.com和domain2.localhost.com。在域1上,我有一个包含iFrame(托管在域2上)的JSP。如何将JS变量从子Iframe传递到父JSP,并将其存储在domain1.localhost.com上托管的JSP的局部变量中

我尝试在两个JSP上定义document.domain=“localhost”,但都不起作用。由于明显的跨域策略,甚至父DOM窗口在子iFrame(子域)中也不可用


非常感谢您的帮助。

对不起,但我认为这是不可能的。但是也许你可以解释一下你想要达到的目标,也许我们可以想出一些替代方案:-)

你使用的确切域名结构是什么? 如果您使用的是mydomain.localhost,则无法将.localhost用作域名的共享部分,因为它是一级域。 如果您使用的是mydomain.localhost.com,那么共享部分(document.domain)应该是“localhost.com”,而不仅仅是您在问题中提到的“localhost”。
document.domain应该可以很好地用于此目的,但即使您有两个不同的域,例如company1.com和company2.com,也可以在的帮助下将值从iframe传递到父级。

在子iframe中,我几乎没有omniture标记。我想将所有这些标记传递给父JSP(位于另一个域上)。因此,在child Iframe中,我创建了一个javascript函数,它接受所有omniture标记,创建一种哈希映射或键值对结构,并将所有内容存储在一个变量中。现在我需要将该变量传递给父JSP的一个局部变量,这样我就可以在父级使用omniture标记。top是您引用以到达外部框架的变量。它是外部框架的窗口。所以top.document.body是外部框架的主体。可以使用top.myfunction(sendLocalVariables)调用全局函数;我想这是最后一块拼图,如果跨来源的东西工作:-)但我还有一个问题。我必须在父JS变量中指定子Iframe JS变量的值。你能帮忙吗?哦,对不起,我错过了你的第二个问题。所以迟做总比不做好,对吧?>我必须在父JS变量中指定子Iframe JS变量的值。如果他们有共享的document.domain,那么这很容易,因为
parent.window.someVariableOfParent=SomeVariableOfFrameChild