Javascript 子窗口调用父窗口js方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Javascript 子窗口调用父窗口js方法相关的知识,希望对你有一定的参考价值。
父页面引入一个js文件 js文件中有方法打开一个子页面 然后子页面要调父页面中的一个function 怎么写 现在情况是“opener.方法名”可以调js文件中的function 不能调父页面中的function
JS子窗口调用父窗口的方法:
框架(iframe)形式,这时用到是window.parent, window.parent能获取一个框架的父窗口或父框架。顶层窗口的parent引用的是它本身。可以用这一点特性来判断这个窗口是否是顶层窗口。详情如下:
1、1.html代表的是父窗口
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<html xmlns="
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>父页面</title>
</head>
<body>
<form name="form1" id="form1">
<input type="text" name="username" id="username" />
</form>
<iframe src="2.html" >
</body>
</html
2、2.html代表的子窗口
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<html xmlns="
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>子页面</title>
<script type="text/javascript">
function changeValue(val)
var _parentWin = window.parent ;
_parentWin.form1.username.value = val ;
</script>
</head>
<body>
<input type="file" name="filename" onchange="changeValue(this.value);" />
</body>
</html>
这时在子窗口(iframe窗口)所做的改变,会改变父窗口中username的值。
参考技术A 你的js方法打开子页面?以前用iframe可以实现效果,页面有父子关系,但你说的这个js打开的是个什么概念?追问
就是js文件里这样写的:
function query(obj)
if(event.keyCode==13 || param=="1")
window.open("**.pfv,"newwindow","resizable:yes;scroll:yes;status:no;dialogWidth=700px;dialogHeight=710px;center=yes;help=no;");
我用两个静态文件试了一下,你参考一下吧
你可以参考下。呵呵
jqueryjs调用iframe父窗口与子窗口元素的方法整理
1. jquery 在iframe子页面获取父页面元素代码如下:
$("#objid", parent.document);
2. jquery在父页面 获取iframe子页面的元素
$("#objid",document.frames(‘iframename‘).document);
3.js 在iframe子页面获取父页面元素代码如下:
window.parent.document.getElementByIdx_x("元素id");
4.js 在父页面获取iframe子页面元素代码如下:
window.frames["iframe_ID"].document.getElementByIdx_x("元素id");
5.子类iframe内调用父类函数:
window.parent.func();
以上是关于Javascript 子窗口调用父窗口js方法的主要内容,如果未能解决你的问题,请参考以下文章