Заполнение IFRAME динамическим контентом из JavaScript - PullRequest
10 голосов
/ 19 апреля 2010

У меня есть IFRAME, который должен быть наполнен контентом из JavaScript. Если бы контент был на сервере, все, что мне нужно было сделать, это:

    function onIFrameFill() {
         myIframe.location.href = "HelloWorld.html";
     }

Но у меня есть HTML-страница, сгенерированная на клиенте и представленная в виде строки (я не сильно на нее влияю). Как я могу заполнить содержание моего iframe программно?

Ответы [ 3 ]

21 голосов
/ 19 апреля 2010

Я думаю, вы ищете что-то вроде:

var iframeDoc = myIframe.contentWindow.document;
iframeDoc.open();
iframeDoc.write('hello world');
iframeDoc.close();
4 голосов
/ 04 июля 2012

Пробная настройка <code>.innerHTML , но это не работает. Решение Джеффри К работам. Просто хочу добавить, что <code>myIframe.contentWindow может не работать в старых браузерах (читайте старые версии IE), поэтому вы можете сделать

var iFrameWindow = myIframe.contentWindow || myIframe.documentWindow;
var iFrameDoc = iFrameWindow.document;

затем используйте документ open (), write () и close (), как указано выше.

0 голосов
/ 19 апреля 2010

А как же .innerHTML?

myIframe.innerHTML = "This is some HTML <b>text</b>";
...