2010-10-21 111 views
1

即時嘗試根據我在父窗口中具有的值在子窗口中動態創建元素,但沒有成功。子窗口正在打開,但未與元素。這裏是我寫的代碼,有人可以給它一個掠奪嗎?這是可能在所有使用JavaScript/jQuery的>如何從父窗口動態創建子窗口中的元素

function fnOpenPrint(){ 

openPrint = window.open('print.htm'); 
childWin = openPrint.document; 

var newDiv = childWin.createElement("<div id='para'>") 
newDiv.innerHTML = document.forms[0].txtBranch.value; 

} 

回答

2

嘗試加載完畢後,在子窗口

function fnOpenPrint(){ 
    var openPrint = window.open('print.htm'); 
    openPrint.onload = function() { 
     var doc = openPrint.document; 

     var newDiv = doc.createElement("div"); 
     newDiv.id = 'para'; 
     newDiv.innerHTML = document.forms[0].txtBranch.value; 
     doc.body.appendChild(newDiv); 
    }; 
} 

DOM操作必須做到的。

+0

感謝烏拉圭回合的答案,但它沒有工作:( – manraj82 2010-10-22 09:00:20

+0

對不起M8它沒有實際工作,我只是發現它在safari中工作,但不在IE6中...有沒有什麼爲什麼它不在IE瀏覽器? – manraj82 2010-10-22 09:18:01

+0

Arrix,這仍然適用於所有瀏覽器嗎?我可以在Firefox和Chrome中操作DOM,而無需onload事件。 – antonio 2015-01-04 16:45:50

1

的createElement不會自動將其添加到文件......你prbably不得不這樣做太:

childWin.body.appendChild(newDiv);