在AngularJs中父子页面如何相互调用方法和接收值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在AngularJs中父子页面如何相互调用方法和接收值相关的知识,希望对你有一定的参考价值。

参考技术A 因为AngularJs用的人不多,我发现网上关于这方面的文章不多,所以我分享一下在AngularJs中是如何调用和接收的。

<app-dialog></app-dialog>其中dialog是子页面文件夹的名字,只需要把这个标签放在父页面中需要的地方即可。[sessionId]='sessionId',sessionId是父页面中的值,需要传到子页面中去的,父页面中的sessionId是需要定义的,而子页面需要这样来接收父页面中的sessionId,

'#dialogfile'相当于给子页面添加了一个id,在父页面中可以直接通过这个id来接收子页面的值和调用子页面的方法(如果是调用子页面的方法的话,方法名后面是需要加括号的),在父页面中需要这样来定义,

最后是子页面调用父页面的方法。

其中'this'指的就是父页面,而[parent]则是需要在子页面定义的一个名字可以随意更改,

记住调用父页面的方法,方法名后面是需要加括号的,如果有参数的话,直接写在括号里面就好。

父子页面之间元素相互操作(iframe子页面)

js/jquery获取iframe子页面中元素的方法:

      一、使用window.frames["iframe的ID"]获取元素   

window.onload = function() {
        var oIframe = window.frames["oIframe"].document.getElementById("getFrame");
        console.log(oIframe);
}

       注意:此处一定要加上window.onload或者DOMContentLoaded,也就是DOM加载或者页面加载完成后。

     二、使用window.name获取元素   

var oIDframe = window.oIframe.document.getElementById("getFrame");
console.log(oIDframe);
oIframe是iframe的name属性值,这种获取方法不必写在window.onload或者DOMContentLoaded中,请自行测试。

三、使用getElementById获取元素 
var oIdFrame = document.getElementById("oIframe").contentWindow.document.getElementById("getFrame");
console.log(oIdFrame);

使用document.getElementById获取本页面的iframe元素后,再获取iframe子页面的元素。这种获取方法不必写在window.onload或者DOMContentLoaded中

 四、使用jquery获取

var ojIframe = $("#oIframe").contents().find("#getFrame").html();
 console.log(ojIframe);

js/jquery  iframe子页面获取父页面元素的方法:

      一、使用js

var fatherEle = window.parent.document.getElementById("title");
 console.log(fatherEle);

  二、使用jq

var fatherEleJq = $("#title",parent.document);
console.log(fatherEleJq);

父页面:

<div id="title">
        index包含iframe子页面
    </div>
    <div id="parent">
        <iframe name="oIframe" id="oIframe" src="iframe.html" frameborder="0" width="1000" height="562"></iframe>
</div>

iframe.html子页面:

<div id="getFrame">iframe</div>

参考链接:http://java-my-life.iteye.com/blog/1275205

以上是关于在AngularJs中父子页面如何相互调用方法和接收值的主要内容,如果未能解决你的问题,请参考以下文章

iframe父子页面相互调用方法,相互获取元素

iframe父子相互调用,相互操作DOM

框架父子页面iframe相互调用方法

layui使用layer弹出层父子页面事件相互调用方法

JQuery javascript实现父子页面相互调用

angularjs2中的非父子组件的通信