代码之家  ›  专栏  ›  技术社区  ›  ChronicLogic

将HTML响应注入iframe(从Ajax调用)

  •  0
  • ChronicLogic  · 技术社区  · 6 年前

    我不想拐弯抹角:我的Ajax调用返回一个消息对象响应(message=…),其中messages.description参数是一个HTML字符串,看起来像这样:

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

    有没有办法把它嵌入到iframe中?我对伊夫拉姆斯不太熟悉,对此事的任何帮助都表示感谢!

    另外,我使用的是普通的react,没有babel或webpack,所以react.createElement()应用程序。这只是为了给新特性一个概要,因为我的公司希望在接下来的几个月内转变为react+node.js。

    2 回复  |  直到 6 年前
        1
  •  1
  •   Prabath Perera    6 年前

    您可以将HTML注入iframe,如下所示:

    HTML:

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

    Javascript:

    document.getElementById('iFrameID').src = "data:text/html;charset=utf-8," + escape(htmlContent);
    
        2
  •  0
  •   khalid    6 年前

    你不能这样做,因为浏览器的策略是禁止跨域的。

    但是,在一种情况下,如果您对要在iframe中更新HTML的域有控制权,就可以这样做。

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