簡體   English   中英

訪問新打開的窗口中的元素

[英]Access an element in a newly opened window

我想使用JavaScript打開html文件,並將一些數據寫入其某些元素。 我嘗試了以下方法:

var info_window = window.open('info_print.html')
info_window.document.getElementById('new_info').innerHTML = data;

但是當我有#new_info元素時,我得到此錯誤:

cannot set property 'innerHTML' of null

我該怎么辦? 我檢查了評論的問題,但不是我的問題。

假設您的info_print.html實際上包含了您要查找的元素,那么您需要等待Window加載它,然后才能訪問它。

這是使用onload事件的簡單解決方案:

var info_window = window.open('info_print.html');

info_window.addEventListener('load', function() {
    info_window.document.getElementById('new_info').innerHTML = data;
});

我創建了一個小提琴 ,它可以正常工作。 您能否檢查您的html文件是否包含new_info元素,或者您是否在控制台中遇到任何錯誤。

下面是我的小提琴代碼。

var w = window.open('', "", "width=600, height=400, scrollbars=yes");
//assuming html as your info_print.html file which contains new_info element
var html = '<div id="new_info"></div>';
w.document.body.innerHTML = html;
w.document.getElementById("new_info").innerHTML="test content";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM