Javascript 如何在从父窗口调用的子窗口中设置输入文本值?
我想在子窗口中设置文本框值。这个值是从父窗口传递的。我正在使用HTML和Javascript。提前谢谢。我的代码如下 在父窗口中Javascript 如何在从父窗口调用的子窗口中设置输入文本值?,javascript,Javascript,我想在子窗口中设置文本框值。这个值是从父窗口传递的。我正在使用HTML和Javascript。提前谢谢。我的代码如下 在父窗口中 var newWindow = window.open('child.html'); newWindow.id = 1; newWindow.init(); 在子窗口中 function init(){ document.getElementById('id').value = id; } 我认为我的代码没有调用init()函数。 我试过了 window.open
var newWindow = window.open('child.html');
newWindow.id = 1;
newWindow.init();
在子窗口中
function init(){
document.getElementById('id').value = id;
}
我认为我的代码没有调用init()函数。
我试过了
window.open('child.html').document.getElementById('id').value += 1;
在我的父窗口中,它不工作。您需要等待页面实际加载到子窗口中:
var newWindow = window.open('child.html');
newWindow.addEventListener("DOMContentLoaded", function() {
newWindow.id = 1;
newWindow.init();
});
根据用于加载init
的script
标记,您可能需要更具防御性:
var newWindow = window.open('child.html');
newWindow.addEventListener("DOMContentLoaded", function() {
tryInit();
function tryInit() {
if (!newWindow.init) {
setTimeout(tryInit, 10);
return;
}
newWindow.id = 1;
newWindow.init();
}
});
你可能会在(比如)20秒后放弃,所以如果出现问题,它不会不断循环