0

我有一个 ID 为“appframe”的 iframe,源是 page.html,它位于同一台服务器上。我想使用 jQuery 获取页面的源代码。

alert($("#appframe").contents().find("html").html());

即使文档不包含那些标签,它也会返回<head></head><body></body>,它只包含“默认页面”,所以这正是它应该返回的内容。知道如何使用 jQuery 获取整个文档的正确源脚本吗?

例如。如果文档将是“测试”,那么这正是它应该返回的内容。

请注意:几周前我确实问过这个问题。不幸的是,我没有得到解决的答案。由于我的声誉较低(~85),我不能要求赏金......这对我来说没有多大意义。无论如何,它迫使我重新发布这个问题。

4

1 回答 1

1

调用检索标签$("#appframe").contents().find("html").html()内应包含的内容。<html></html>

在 IFRAME 的情况下,如果它还没有完成加载,它会返回<head></head></body></body>本来应该存在的空白。

如果您在 $(document).ready() 中进行调用,则 IFRAME 可能尚未完成加载。尝试从按钮单击事件内部进行调用。

请记住,如果您的 IFRAME 包含纯文本并且您尝试获取其 html(),它将包含上述空白的 head 和 body 标签,即使它们不存在。

如果您不需要访问 IFRAME 中的所有 HTML,则应调用 ("body").html() 来获取内容。尝试从按钮单击事件中调用它:

alert($("#appframe").contents().find("body").html());

于 2009-05-29T11:24:07.740 回答