代码之家  ›  专栏  ›  技术社区  ›  Jafar Sabah

Typescript:如何从ionic中的iFrame获取输入数据

  •  1
  • Jafar Sabah  · 技术社区  · 8 年前

    我有一个叫做外部iframe支付页面的离子页面。此iframe有自己的操作,然后在自己的框架中返回结果(如重定向安全支付页面)

    我像框架一样打开页面

    <ion-content padding>
      <ion-label>Result :</ion-label>
      <iframe id="payment-frame" width="100%" height="100%" [src]="url" frameborder="0" allowfullscreen></iframe>
    </ion-content>

    在ts文件中,我试图获得如下输入

    var script = (<HTMLScriptElement[]><any>document.getElementsByName('Result'))[0];
    console.log(script); 
    

    //输入为空

    然后我试着先得到框架,然后得到里面的元素,就像

    var inputValue = (<HTMLInputElement>document.getElementById('payment-frame').contentWindow.document.getElementById('Result'));
    

    //它说HTMLElement中不存在内容窗口。

    如何从外部iframe页面获取“Result”元素?有人能帮忙吗?

    1 回复  |  直到 8 年前
        1
  •  1
  •   chrystian    8 年前

    我认为您可以使用postMessage()进行通信 https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage

    试试看:)

    如果需要的话,我会在稍后尝试创建一个plunk