我想打开一个新窗口,这个窗口有一个对象列表,这些对象应该根据前一个窗口的选择进行过滤。我想我可以通过一个函数过滤列表,但是如何运行这个函数呢?
这是我能够做到的:
var popup = window.open('pageURL');
$(popup.document).ready(function() {
// this is where function should be
popup.alert('HelloWorld');
});
但是如何将警报更改为功能?
如果我在其他应用上有功能,function test() { alert('HelloWorld'};
如何从我的第一个应用程序运行此功能?
与popup.alert('HelloWorld');
交换popup.test();
无效。
答案 0 :(得分:0)
您需要引用打开的窗口来调用新窗口中的函数,例如:
var oNewWindow = window.open("new.window.url", "mywindow");
oNewWindow.onload = function(){oNewWindow.window.newWindowFunction();};
答案 1 :(得分:0)
我最终得到了这个解决方案
var popup = window.open('http://s234-0057/actiontracker/SiteAssets/Avvik/html/app.aspx');
var readyStateCheckInterval = setInterval(function() {
if (popup.document.readyState === "complete") {
clearInterval(readyStateCheckInterval);
popup.test();
}
}, 50);
我检查弹出窗口是否准备就绪,取消检查并运行功能。解决方案来自top answer on this question,@ this.lau _