父窗口如何调用子窗口里的js方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了父窗口如何调用子窗口里的js方法相关的知识,希望对你有一定的参考价值。
如题
父窗口如何调用子窗口里的js方法。
1、定义一个子窗口
new.htm<script>
function testa()//定义子窗口的方法
</script>
2、定义父窗口,并调用子窗口的方法
function openWindow()
var newWindow = window.open(“new.htm”, "", "width=400,height=300 ");//打开子窗口,并返回子窗口的window
newWindow.testa();//调用子窗口的方法
</script> 参考技术A 通过iframe的contentWindow获取到子窗口的window对象,通过此对象去调用子窗口的方法,话说你这里的子窗口是指的iframe吧?如果不是,就当我没说 参考技术B 方式:
window.子窗口名称.子窗口里的js方法
前提要求是父窗口于子窗口应该在同一个域下,否则js跨域会有拒绝访问错误的。
js子窗口调用父窗口函数并传递对象给父窗口的方法
--父窗口
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Parent.aspx.cs" Inherits="Parent" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>无标题页</title> <script language="javascript" type="text/javascript"> function OpenWin() window.open("child.aspx","new") function shuaxin(obj)//obj是接收到的对象 alert(obj.name);//获取对象属性。 function shuaxinb() window.location.href=window.location.href; </script> </head> <body> <form id="form1" runat="server"> <div> 父窗口<br /> <br /> <input type="text" id="ddddd" style="width: 323px"/><br /> <input type="button" id="Button1" value="刷新1" onclick="javascript:shuaxinb();" /> <input type="button" id="d" value="打开1" onclick="javascript:OpenWin();" /> </div> </form> </body> </html>
--子窗口
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Child.aspx.cs" Inherits="Child" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>无标题页</title> <script language="javascript" type="text/javascript"> function closew() var parent= window.opener; var person=; person.name="Tom"; person.age=123; // parent.location.reload(); parent.shuaxin(person);//把person对象传递过去 var parentControl=parent.document.getElementById("ddddd"); parentControl.value="我是被子窗口赋值过来的,哈哈"; window.close(); </script> </head> <body> <form id="form1" runat="server"> <div> 子窗口<br /> <input type="button" id="d" value="关闭1" onclick="javascript:closew();" /> </div> </form> </body> </html>
以上是关于父窗口如何调用子窗口里的js方法的主要内容,如果未能解决你的问题,请参考以下文章