一、父窗口调用iframe子窗口方法 
1、HTML语法:<iframe name="myFrame" src="child.html"></iframe> 
2、父窗口调用子窗口:myFrame.window.functionName(); 
3、子窗品调用父窗口:parent.functionName(); 
简单地说,也就是在子窗口中调用的变量或函数前加个parent.就行 
4、父窗口页面源码: 
复制代码 代码如下:

<html>
<head>
<script type="text/javascript">
function say() {
alert("parent.html------>I'm at parent.html");
}
function callChild()
{
//document.frames("myFrame").f1();
myFrame.window.say();
}
</script>
</head>
<body>
<input type=button value="调用child.html中的函数say()" οnclick="callChild()">
<iframe name="myFrame" src="child.html"></iframe>
</body>
</html>

  

5、子窗口页面: 
复制代码 代码如下:

<html>
<head>
<script type="text/javascript">
function say()
{
alert("child.html--->I'm at child.html");
}
function callParent() {
parent.say();
}
</script>
</head>
<body>
<input type=button value="调用parent.html中的say()函数" οnclick="callParent()">
</body>
</html>

  

二、iframe 父窗口和子窗口相互的调用方法 
1、IE中使用方法: 
父窗口调用子窗口:iframe_ID.iframe_document_object.object_attribute = attribute_value 
例子:onClick="iframe_text.myH1.innerText='http://www.pint.com';" 
子窗口调用父窗口:parent.parent_document_object.object_attribute = attribute_value 
例子:οnclick="parent.myH1.innerText='http://www.pint.com';" 
2、Firefox中使用方法: 
上面在IE下没有问题,但在firefox下不正常。在firefox下,应该是如下调用方法: 
父窗口调用子窗口:window.frames["iframe_ID"].document.getElementById("iframe_document_object"­).object_attribute = attribute_value 
例: window.frames["iframe_text"].document.getElementById("myH1").innerHTML= "http://hi.jb51.net/"; 
子窗口调用父窗口:parent.document.getElementById("parent_document_object").object_attribute = attribute_value 
例: parent.document.getElementById("myH1").innerHTML = "http://jb51.net/"; 
3、完整的例子 
test.htm 
复制代码 代码如下:

<HTML>
<HEAD>
<TITLE> Test Page </TITLE>
<script src="prototype-1.4.0.js"></script>
<script language="javascript">
function show()
{
window.frames["iframe_text"].document.getElementById("myH1").innerHTML = "http://hi.jb51.net/";
}
</script>
</HEAD>
<BODY>
<iframe height="350" width="600" src="iframe_test.htm" name="iframe_text"></iframe>
<form action="" method="post">
<input name="haha" id="haha" type="text" maxlength="30" value="haha" />
<br />
<textarea cols="50" rows="5" id="getAttributeMethod"></textarea>
<input type="button" onClick="show();" value="提交"/>
</form>
<h1 id="myH1">d</h1>
</BODY>
</HTML>

  

frame_test.htm 
代码如下:

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<script language="javascript">
function show()
{
parent.document.getElementById("myH1").innerHTML = http://jb51.net/;
}
</script>
<body>
<h1 id="myH1">ha</h1>
<form action="" method="post">
<input name="abc" id="abc" type="text" maxlength="30" value="abc" />
<br />
<textarea cols="50" rows="10" id="text"></textarea>
<br />
<input type="button" value="提交" οnclick="show();"/>
</form>
</body>
</html>

  

test.htm里面firefox下访问iframe 必须用name,不能用id,所以要改为name="iframe_test" 三、在c#中如何动态改变iframe的src值,动态指向一个网页 
1)如果是javascript脚本 
给iframe加一个ID如<iframe id=frmList…… 
在脚本写 
frmList.document.location=strNewUrl 
2)如果是后台程序 
给iframe加一个ID,再加上runat=server 如<iframe id=frmList runat=server …… 
在程序里写 
frmList.Attributes.Add("src",strNewUrl);

转载于:https://www.cnblogs.com/examine/p/4913207.html

iframe 子父窗口互掉 js相关推荐

  1. IFrame取父窗口参数

    父页面的ShowLotInfo方法 //显示指定批号的信息,此方法会提交父页面的 function ShowLotInfo(lotIndex) { //alert(lotIndex); documen ...

  2. iframe子页面与父页面元素的访问以及js变量的访问

    后台管理系统嵌套了很多iframe页面,想要取得父页面的元素,需要特殊的写法,总是记不住,写下来方便寻找 // eg:iframe页面找父页面的 #nav $('#nav',parent.docume ...

  3. js弹框带传值父窗口给子框_layer弹窗,父页面 子iframe 兄弟iframe之间传值,函数调用...

    在这里记录下前端layer弹窗 父,子,兄弟弹窗 之间参数传递以及函数调用 ① [父-->子] [子-->父] 前言 //子弹窗给父页面元素赋值 parent.$("#paren ...

  4. iframe 父窗口和子窗口相互的调用方法集锦

    一.父窗口调用iframe子窗口方法 1.HTML语法:<iframe name="myFrame" src="child.html"></i ...

  5. 总结JavaScript(Iframe、window.open、window.showModalDialog)父窗口与子窗口之间的操作

    前些日子,一直奔波于这三种操作,想想以后会常用,干脆整理下来,供自己以后查看.也给大家分享一下! 以下面写出自己认为有用的操作和代码. 第一次在园里面写,肯定有很多不足够之处,希望大家多多指点. 一. ...

  6. qt如何把父窗口的变量传给子窗口_父窗口和iframe子窗口之间相互传递参数和调用函数或方法...

    1.父窗口向子窗口传递参数: 可以在url中添加参数:2.html?a=1&b=2&c=3 然后在子页面上可用js解析,提供一个函数: function getQueryStr(sAr ...

  7. js如何保证iframe里的内容,显示在父窗口

    为什么80%的码农都做不了架构师?>>>    很多情况下,在使用iframe的时候,经常出现父窗口的内容,显示在了iframe里面,采用js判断的方式,即可简单的解决这个问题: i ...

  8. JS实现关闭当前子窗口,刷新父窗口及调用父窗口的方法

    一.JS实现关闭当前子窗口,刷新父窗口 JS代码如下: <script>  function refreshParent() {   window.opener.location.href ...

  9. js弹框带传值父窗口给子框_JavaScript实现弹出子窗口并传值给父窗口

    新建父窗口页面: 加入以下脚本 First function ShowDialog(Url) { var  iWidth=560; //模态窗口宽度 var  iHeight=300;//模态窗口高度 ...

最新文章

  1. O365(世纪互联)SharePoint 之站点个性化
  2. GitHub学习笔记
  3. 每天一道LeetCode-----找到二叉树所有和为给定值的路径
  4. Lucene学习之——停用词
  5. 【最简代码】1076 Wifi密码 (15分)_8行代码AC
  6. android切环境插件,Android Studio下Flutter环境搭建图文教程
  7. Javascript -- In
  8. 化浆池是什么东西_一种双工位浆化池的制作方法
  9. 单元测试中使用Mockito模拟对象
  10. LayerNorm是Transformer的最优解吗?
  11. 作者:姚前(1970-),男,中国人民银行征信中心副主任、高级工程师,主要研究方向为分布式系统和计算机安全。...
  12. 日志转化成json格式
  13. python中import random_python import random
  14. 实用网站推荐——office模板(PPT)
  15. html当当图书榜页面,2019书排行榜_当当网图书排行榜
  16. php 两张图片合并,ps合并图层快捷键
  17. vue项目引用QRCode生成二维码扫码实现app登录
  18. 《计算机视觉黑魔法16个实战项目》之扫描全能王
  19. [顺序刷] M6/M8/M11/E12/E14
  20. 设置老版版谷歌浏览器自动启用flash

热门文章

  1. 信息服务器为什么选择在贵州,为啥云服务器在贵州
  2. 表字段注释放在哪_橱柜台面6种材质优缺点大解剖,我来测评,告诉你哪一种适合你!...
  3. eclipse 跑maven命令_maven编写命令行执行mvn package没问题,eclipse执行报错
  4. vue mysql webapp_基于Laravel+VueJS实战开发WebAPP
  5. pycharm 开发app_windows及mac下开发Excel, python+xlwings开发环境配置
  6. creo组装后怎样移动元件_BGA元件SMT装配工艺要点简介
  7. 在下列计算机应用项目中,属于过程控制应用领域的是,计算机基础试题.ppt
  8. php批量下载网络图片,php批量下载网页图片并替换路径为本地
  9. leetcode461. 汉明距离
  10. 《Python Cookbook 3rd》笔记(4.2):代理迭代