问题
I have an IFRAME that should be filled with content from JavaScript. Had the content be on the server all I had to do is:
function onIFrameFill() {
myIframe.location.href = "HelloWorld.html";
}
But the content I have is a HTML page generated on the client and represented as a string (I have not much influence on it). How can I populate the content of the my iframe programatically?
回答1:
I think you're looking for something like:
var iframeDoc = myIframe.contentWindow.document;
iframeDoc.open();
iframeDoc.write('hello world');
iframeDoc.close();
回答2:
Tried setting
but that does not work. Solution by Jeffery To works. Just want to add that .innerHTML
might not work in old browsers (read IE old versions) so you can domyIframe.contentWindow
var iFrameWindow = myIframe.contentWindow || myIframe.documentWindow;
var iFrameDoc = iFrameWindow.document;
then use the document open(), write() & close() as above.
回答3:
What about .innerHTML
?
myIframe.innerHTML = "This is some HTML <b>text</b>";
来源:https://stackoverflow.com/questions/2665980/filling-an-iframe-with-dynamic-content-from-javascript