首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >创建一个<iframe>元素并使用jQuery将html内容附加到该元素

创建一个<iframe>元素并使用jQuery将html内容附加到该元素
EN

Stack Overflow用户
提问于 2010-11-08 06:10:34
回答 3查看 44K关注 0票数 17

在不指定src属性的情况下,是否可以使用jQuery创建一个<iframe>元素并将html内容附加到该元素?

问题是我需要创建一个iframe,并且我已经有了它的内容(我以AJAX响应的形式获得它)。不幸的是,我不能将我得到响应的URL指定为src属性。我想做一些类似的事情:

代码语言:javascript
复制
$('<iframe id="someId"/>').append(response).appendTo("#someDiv");
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-11-08 06:18:31

试试这个:

代码语言:javascript
复制
$('<iframe id="someId"/>').appendTo('#someDiv')
                          .contents().find('body').append(response);
票数 36
EN

Stack Overflow用户

发布于 2010-11-08 06:15:40

那么为什么要使用iframe呢?把它们都放到另一个容器里。除了可以从src属性加载页面之外,我想不出iframe有什么优势。

我想,如果您需要iframe用于其他目的,比如加载页面,但您想用ajax响应替换它,您可以使用jQuery将iframe替换为div,并根据需要将其替换回来。

另一种可能是修改ajax php脚本以在iframe中输出您想要的整个页面,而不是ajax。然后使用jQuery在iframe中使用新参数更改请求页面的地址,以显示更新的内容。

票数 2
EN

Stack Overflow用户

发布于 2020-02-04 22:28:20

被接受的答案对我不起作用,但以下解决方案有效:

代码语言:javascript
复制
$('<iframe>', {
    id: 'someId',
    // other options like
    frameborder: 0,
    scrolling: 'no'
}).appendTo('#someDiv').on('load', function () {
    $(this).contents().find('body').append(response);
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4119979

复制
相关文章

相似问题

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