gpt4 book ai didi

javascript - 无法访问 ADF InlineFrame 中的 javascript 函数

转载 作者:行者123 更新时间:2023-11-30 19:25:17 25 4
gpt4 key购买 nike

我有一个包含 af:InlineFrame 的 jsff 页面。

这个 InlineFrame 的来源是 HTML 文件,比如 Frame.html

这个 html 文件有一个名为 inlineframeFunction() 的 javascript 函数

我在 jsff 页面中添加了一个按钮。

我的用例是在单击我无法实现的按钮时调用函数 inlineframeFunction。

var doc = inlineFrame.contentDocument? 
inlineFrame.contentDocument: inlineFrame.contentWindow.document;
doc.frameFunction();

框架.html

<script type="javascript">    
function inlineframeFunction(){
alert('Inline Frame Function ');
}
</script>

JSFF 页面

<af:panelGroupLayout id="pgl1" layout="vertical">

<af:resource type="javascript">

function inlineFrameRegionPageFunction() {
alert('Region Page Function');
var inlineFrame = document.getElementById('r1:0:if2');
var doc = inlineFrame.contentDocument? inlineFrame.contentDocument: inlineFrame.contentWindow.document;
doc.frameFunction();
}
</af:resource>
</af:panelGroupLayout>
<af:panelGroupLayout id="pgl2" layout="vertical">
<af:panelBox text="Inline Frame Region" id="pb2"
inlineStyle="background-color:Lime; border-color:Lime;">
<f:facet name="toolbar"/>
<af:inlineFrame id="if2" source="/Frame.html" shortDesc="InlineFrame"
inlineStyle="background-color:Gray;"/>
<af:commandButton text="Inline Region Button" id="rb2"
actionListener="#{pageFlowScope.RegionBean.onClickInlineFrameRgnButton}"/>
</af:panelBox>
</af:panelGroupLayout>

最佳答案

我使用了以下内容并且有效!

    function inlineFrameRegionPageFunction() {          
var frameComp =$('[id*="InlineFrame"]', document)[0].id;
document.getElementById(frameComp).contentWindow.frameFunction();
}
</af:resource>

关于javascript - 无法访问 ADF InlineFrame 中的 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56972229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com