Как получить содержимое тела iframe в Javascript?


Answers

Используя JQuery, попробуйте следующее:

$("#id_description_iframe").contents().find("body").html()
Question
<iframe id="id_description_iframe" class="rte-zone" height="200" frameborder="0" title="description">
  <html>
    <head></head>
    <body class="frameBody">
      test<br/>
    </body>
  </html>
</iframe>

Я хочу получить:

test<br/>



он отлично работает для меня:

document.getElementById('iframe_id').contentWindow.document.body.innerHTML;



Я думаю, что размещение текста между тегами зарезервировано для браузеров, которые не могут обрабатывать iframe, т.е.

<iframe src ="html_intro.asp" width="100%" height="300">
  <p>Your browser does not support iframes.</p>
</iframe>

Вы используете атрибут 'src' для установки источника iframes html ...

Надеюсь, что это поможет :)




Халки правильно, вам нужно использовать атрибут src, чтобы указать страницу, которая должна содержаться в iframe. Если вы сделаете это, и документ в iframe находится в том же домене, что и родительский документ, вы можете использовать это:

var e = document.getElementById("id_description_iframe");
if(e != null) {
   alert(e.contentWindow.document.body.innerHTML);
}

Очевидно, вы можете сделать что-то полезное с содержимым, а не просто поставить их в предупреждение.




Related