2016-07-05 14 views
0

私はsap ui5にiframeを定義しました。ページが開いた後、ユーザーは何かを行い、その後、HTMLページからデータを取得する必要があります。 HTMLページには、idが "list"で、その要素だけが必要な要素があります。sap ui5のiframeからデータを取得する方法は?

var htmlPage = new sap.ui.core.HTML({ 
    preferDOM: true, 
    content: "<iframe id='frameAdd' src='url'></iframe>" 

}); 
var dialog = new sap.m.Dialog({title:"User Picker",contentWidth:"20%", contentHeight:"20%", 
    beginButton:new sap.m.Button({text:"Close",press:function(){dialog.close();}}),content:htmlPage}) 

は、私は物事の下に試みたが、あなたはこれを実装するために私に正しい方法を提案してください行っている場合は$('#frameAdd').contents()

ためを拒否された

htmlPage.getContent() 
htmlPage.getSanitizeContent() 
htmlPage.getDomRef("list") 
document.getElementById("list") 

とgeting アクセス関連何かを取得していませんit

答えて

1

iFrameは、おそらく異なるドメイン/ポート/プロトコルから提供される可能性があります。この場合、SAPUI5固有の問題ではなく、ブラウザのセキュリティ対策の一部です。

のブラウザでsame-origin policyものiFrameに適用されます。

のJavaScriptのAPIなどiframe.contentWindowwindow.parentwindow.openwindow.openerとして文書が直接相互に参照することができます。 2つのドキュメントが同じ起源を持たない場合、これらのリファレンスは、次の2つのセクションで説明するように、WindowオブジェクトとLocationオブジェクトに非常に制限されたアクセスを提供します。

Source

ソリューションは、同じoriginからiFrameを果たすことであろう。

関連する問題