首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用jQuery获取iframe的HTML内容

使用jQuery获取iframe的HTML内容
EN

Stack Overflow用户
提问于 2012-01-11 13:05:01
回答 7查看 88.3K关注 0票数 28

我目前正在尝试定制一些OpenCms (基于java的开源内容管理系统),它使用的是FCKEditor embedded,这也是我尝试使用js / jQuery访问的。

我尝试获取iframe的html内容,但是总是得到null作为返回值。下面是我尝试从iframe中获取html内容的方法:

var editFrame = document.getElementById('ta_OpenCmsHtml.LargeNews_1_.Teaser_1_.0___Frame');
alert( $(editFrame).attr('id') );         // returns the correct id
alert( $(editFrame).contents().html() );  // returns null (!!)

查看屏幕截图,我想访问的是'LargeNews1/Teaser‘html部分,该部分当前保存的值为"Newsline en...“。下面您还可以看到Firebug中的html结构。

然而,$(editFrame).contents().html()返回null,我不知道为什么,而$(editFrame).attr('id')返回正确的id。

iframe内容/ FCKEditor在同一站点/域上,没有跨站点问题。

iframe的HTML代码位于http://pastebin.com/hPuM7VUz

更新:

这里有一个有效的解决方案:

var editArea = document.getElementById('ta_OpenCmsHtml.LargeNews_1_.Teaser_1_.0___Frame').contentWindow.document.getElementById('xEditingArea');                        
$(editArea).find('iframe:first').contents().find('html:first').find('body:first').html('some <b>new</b><br/> value');
EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2012-01-11 13:19:35

.contents().html()无法获取IFRAME的HTML代码。您可以执行以下操作来获取它:

$(editFrame).contents().find("html").html();

这将为您返回IFRAME中的所有HTML。或者您也可以使用"body“或"head”来代替"html“来获取这些部分。

票数 58
EN

Stack Overflow用户

发布于 2012-01-11 13:20:33

你可以像下面这样获取内容

$('#iframeID').contents().find('#someID').html();

但是框架应该在相同的域中,请参考http://simple.procoding.net/2008/03/21/how-to-access-iframe-in-jquery/

票数 7
EN

Stack Overflow用户

发布于 2012-01-11 13:11:36

我建议将第一行替换为:

  var editFrame = $('#ta_OpenCmsHtml.LargeNews_1_.Teaser_1_.0___Frame');

使用以下命令对第二个警报表达式执行...and:

  editFrame.html()

另一方面,如果你更喜欢在没有jquery的情况下完成同样的任务,jquery(更酷,我的意思是)可以只使用JavaScript:

  var editFrame = document.getElementById('ta_OpenCmsHtml.LargeNews_1_.Teaser_1_.0___Frame');
  alert(editFrame.innerHTML);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8814411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档