将HTML响应注入iframe(通过AJAX调用)

时间:2018-10-02 20:00:05

标签: javascript html iframe

我不会轻易动手:我的AJAX调用返回一个消息对象响应(message = {...}),其中messages.description参数是一个类似于以下内容的HTML字符串:

"<!doctype html>
<html>
  <head>
    <style>
      ...some style
    </style>
  </head>
  <body>
    ...some content
  </body>
</html>"

是否可以将其嵌入到iframe中?我对iframe不太熟悉,对此表示感谢!

此外,我正在使用没有babel或webpack的香草React,因此React.createElement()足够多。这只是为了概述新功能,因为我的公司希望在接下来的几个月中迁移到React + node.js。

2 个答案:

答案 0 :(得分:1)

您可以按如下所示将html注入iframe,

HTML:

<iframe id="iFrameID" src="javascript:void(0);"></iframe>

Javascript:

document.getElementById('iFrameID').src = "data:text/html;charset=utf-8," + escape(htmlContent);

答案 1 :(得分:0)

您不能这样做,因为浏览器跨域策略禁止使用它。

但是在一种情况下,如果您可以控制要在iframe中更新html的域,则可以。

更多信息https://spring.io/understanding/CORS