вернуть значение iframe внутри тела, используя jquery - PullRequest
2 голосов
/ 10 января 2011

Я использую движок wysihat на моем jsp.Это работает хорошо, но когда я попытался добавить функцию предварительного просмотра, которая предполагает чтение из iFrame, созданного на лету, и поместить его значение в скрытый div предварительного просмотра, он не смог прочитать html, включенный в iframe.Любой обходной путь для этого?Спасибо!В этом примере я хочу вернуть значение внутри тела, используя jquery

, следующий iFrame не записан внутри моего jsp, но он присоединен к div с помощью файла WYSihat.js:

<iframe id="iframeId" class="abc">
   <html>
      <head></head>
      <body>
        <br>
        some text here 
        </br>
    </body>
  </html>
</iframe>

Как вернуть «некоторый текст здесь» и передать его следующей функции: Подсказка, этот iFrame был создан на лету с помощью файла WYSiHat.js, так как его нетрудно написать на моей странице jsp

function preview() {
    alert("hi"+$('iframe.editor').contents().find('body').text());
}

Ответы [ 2 ]

5 голосов
/ 10 января 2011

Ваше описание, безусловно, сбивает с толку, однако для доступа к содержимому iframe необходимо использовать метод contents() для объекта jQuery:

$('iframe.abc').contents().find('body').text();

Здесь мы выбрали iframe., затем получил его содержимое.Оттуда мы можем искать DOM iframe обычно используя find().

Для получения дополнительной информации о методе содержимого см. jQuery docs .

2 голосов
/ 10 января 2011

Чтобы найти элемент внутри iframe, вы можете использовать функцию jQuery .contents(), которая возвращает document объект iframe:

$('iframe.abc').contents().find('body').html();
...