在不指定src
属性的情况下,是否可以使用jQuery创建一个<iframe>
元素并将html内容附加到该元素?
问题是我需要创建一个iframe
,并且我已经有了它的内容(我以AJAX响应的形式获得它)。不幸的是,我不能将我得到响应的URL指定为src
属性。我想做一些类似的事情:
$('<iframe id="someId"/>').append(response).appendTo("#someDiv");
发布于 2010-11-08 06:18:31
试试这个:
$('<iframe id="someId"/>').appendTo('#someDiv')
.contents().find('body').append(response);
发布于 2010-11-08 06:15:40
那么为什么要使用iframe呢?把它们都放到另一个容器里。除了可以从src属性加载页面之外,我想不出iframe有什么优势。
我想,如果您需要iframe用于其他目的,比如加载页面,但您想用ajax响应替换它,您可以使用jQuery将iframe替换为div,并根据需要将其替换回来。
另一种可能是修改ajax php脚本以在iframe中输出您想要的整个页面,而不是ajax。然后使用jQuery在iframe中使用新参数更改请求页面的地址,以显示更新的内容。
发布于 2020-02-04 22:28:20
被接受的答案对我不起作用,但以下解决方案有效:
$('<iframe>', {
id: 'someId',
// other options like
frameborder: 0,
scrolling: 'no'
}).appendTo('#someDiv').on('load', function () {
$(this).contents().find('body').append(response);
});
https://stackoverflow.com/questions/4119979
复制相似问题