从子窗口向父窗口函数发送javascript函数调用。

时间:2012-01-23 04:37:35

标签: javascript extjs extjs3

我想从Window B发出一个javascript调用,这是Window A的孩子。 假设我们有一个窗口A,其中js为同一个ajs.js和窗口B,其中js为bjs.js 窗口B在Window A的容器内打开。 如何从bjs.js发出呼叫到ajs.js函数?

Ext js 3.0 / 3.4 Windows 7

2 个答案:

答案 0 :(得分:1)

您应该能够在winodw B中使用window.parent从bjs.js调用ajs.js中的函数。例如,如果在ajs.js中有函数foo(),则可以从窗口B使用window.parent.foo()

答案 1 :(得分:1)

如果两个窗口位于同一个域中,您可以在父级上声明方法foo(),并使用

在子级中调用它

在父母:

window.foo = function() { alert('called!'); }

从子窗口:

window.parent.foo()

如果他们不在同一个域中,您将无法执行此操作。根据浏览器的版本,您可以使用window.postMessage方法在窗口之间传递信息。